Завершение работы приложения из-за необработанного исключения "NSRangeException". [__NSArrayM objectAtIndex:]: индекс 33 за пределами [0 .. 32]'
У меня есть этот ImportViewController.m
Я извлекаю и загружаю имена из XML с сервера. общее количество элементов 33.
- (void)viewDidLoad
{
[super viewDidLoad];
self.title = @"IMPORT";
NSLog(@"User id = %@",currentUserId);
//some code to send http request.............
NSString *str=[[NSString alloc]initWithData:urlData encoding:NSUTF8StringEncoding];
NSLog(@"str response:%@",str);
NSURL *fileURL= [[NSURL alloc] initWithString:[str stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
NSData *xmlData = [[NSMutableData alloc] initWithContentsOfURL:fileURL];
GDataXMLDocument *doc =[[GDataXMLDocument alloc] initWithData:xmlData options:0 error:nil];
NSArray * names = [doc nodesForXPath:@"//contacts/contact/name/firstname" error:nil];
for (GDataXMLElement *element in names) {
// NSLog(@"name: %@ ",element.stringValue);
[Option addObject:element.stringValue];
}
[Option addObject:@"nil"];
NSLog(@"count: %u ",[Option count]);
for (CFIndex i=0; i<=[Option count]; i++) {
NSLog(@"options item %lu: %@\n",i,Option[i]);
}
}
Ошибка: завершение работы приложения из-за необработанного исключения "NSRangeException", причина: '* - [__ NSArrayM objectAtIndex:]: индекс 33 за пределами [0 .. 32]' * Первый вызов стека вызовов:
1 ответ
Ваша линия
for (CFIndex i=0; i<=[Option count]; i++)
должен прочесть
for (CFIndex i=0; i<[Option count]; i++)