Преобразование NSString в NSarray с помощью компонента componentSeperatedByString - PullRequest
0 голосов
/ 07 августа 2011

Прежде всего, я хотел бы поблагодарить всех за попытку решить мою проблему. Я своего рода новичок, поэтому любая помощь будет оценена по достоинству.

Я объявил (NSString *data), что получил контент с веб-сайта. Я проверил в различных частях моего кода, что данные в строке и что они правильные.

Данные в строке ТОЧНО следующие:

бла 2222, 3333, 1111 222 444 5555,
бла 3333, 4444, 2222 333 555,
бла 4444, 5555, 3333 444 666

этот паттерн продолжается некоторое время. Я хочу проанализировать эти данные в массиве, чтобы он был отделен ",". Следовательно; Я объявил массив с именем (NSArray *storage) и затем сделаю:

storage = [dat componentsSeperatedByString:","];

Затем у меня есть ярлык (UILabel *label). Он подключается через конструктор интерфейса, свойство задается и синтезируется.

Тогда я иду:

label.text = [storage objectAtIndex:0];

Я запускаю симулятор Iphone, и когда я нажимаю кнопку в моем приложении, которая активирует изменение, симулятор iphone появляется на главном экране, где находятся все приложения. Почему это происходит? почему не отображается blah 2222?

Спасибо!

Ответы [ 2 ]

1 голос
/ 07 августа 2011

componentsSeparatedByString: возвращает автоматически освобожденный массив. Ваш storage массив, вероятно, уже освобожден, когда вы нажимаете кнопку. Используйте сохраненное свойство для массива вместо того, чтобы назначать его непосредственно переменной экземпляра.

0 голосов
/ 07 августа 2011

Вы можете использовать этот кусок кода:

NSString *data = @"blah 2222, 3333, 1111 222 444 5555,<br/> blah 3333, 4444, 2222 333 555, <br/> blah 4444, 5555, 3333 444 666";  
NSArray *storage = [data componentSeparatedBy:@","];  
NSString *first= [data objectAtIndex:0];  
NSString *second = [data objectAtIndex:1];
///... and so on
//or 
label.text = [data objectAtIndex:2];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...