Компоненты NSArraySeperatedByString Sigabrt - PullRequest
0 голосов
/ 07 октября 2011

Я получаю Sigabrt в NSlog, и я понятия не имею, почему - какие-либо предложения?

NSString* contentList = [NSString stringWithContentsOfFile:currentFilePath encoding:NSUTF8StringEncoding error:nil];
NSArray* contentArray = [contentList componentsSeparatedByString:@"$$"];

NSLog(@"%@%@",contentList,[contentArray count]);
kunden = [contentArray objectAtIndex:0];
kundenView.text = kunden;

Следуя советам Джо, я теперь получил:

   NSString* contentList = [NSString stringWithContentsOfFile:currentFilePath encoding:NSUTF8StringEncoding error:nil];
NSArray* contentArray = [[contentList componentsSeparatedByString:@"$$"] retain];
if ([contentArray count] > 0) {
    NSLog(@"%@%@",contentList,[contentArray count]);
    kunden = [contentArray objectAtIndex:0];
    kundenView.text = kunden;
}

, что дает мне EXC_BAD_ACCESS на NSLog.

Ответы [ 2 ]

4 голосов
/ 08 октября 2011

Я получаю Sigabrt в NSlog

Ваш оператор NSLog пытается напечатать целое число, как если бы это был объект:

NSLog(@"%@%@",contentList,[contentArray count]);
           ^
         Here!

Заменить %@ с %d.

Подробнее о спецификаторах формата читайте в Руководство по программированию строки .

1 голос
/ 07 октября 2011

Вы не проверяете, чтобы убедиться, что в вашем массиве есть хотя бы 1 элемент.Доступ к [contentArray objectAtIndex:0] будет проблемой, если contentArray пуст.

...