2013-12-09 225 views
0

我想从JSON文件中获取对象但获取error.I想要将此数据显示到tbaleview。从JSON获取对象

OrganizationList =  (
      (
     17, 
     TGB, 
     Ahmedabad, 
     "SG Highway", 
     Dover, 
     "Georgia", 
     388306, 
     12345, 
     "www.abc.com", 
     "37.23909", 
     "-122.34567", 
     "Dec 6, 2013 5:11:15 PM" 
    ) 
); 
isError = 0; 
message = "Organization List is..."; 

我想从这个取 “TGB” ...... 我已经试过这

for(int i=0;i<[tempDataArray count];i++){ 
    [temp addObject:[tempDataArray objectAtIndex:i]]; 
    NSLog(@"temp%@",temp); 
    [searchArray addObject:[temp objectAtIndex:0]]; 
    NSLog(@"searcharray with name%@",searchArray); 
    NSLog(@"name%@",[searchArray objectAtIndex:1]); 
     } 

这里是tempArray ...

(
    (
    17, 
    TGB, 
    Ahmedabad, 
    "SG Highway", 
    Dover, 
    "Georgia", 
    388306, 
    12345, 
    "www.abc.com", 
    "37.23909", 
    "-122.34567", 
    "Dec 6, 2013 5:11:15 PM" 
) 
) 

but this is giving me error index out of bound at index 1. 
+0

什么是'searchArray'的nslog? –

+0

显示json解析的代码 –

回答

3

tempArray不只是一个数组,它不是单维数组,而是二维数组。

for(int i=0;i<[tempDataArray count];i++){ 
      NSArray *secondArray = [tempArray objectAtIndex:i]; 
      [temp addObject:secondArray]; 
      NSLog(@"temp%@",temp); 
      for(int j=0; j < [secondArray count]; j++) { 
        [searchArray addObject:[secondArray objectAtIndex:j]]; 
      } 
      NSLog(@"searcharray with name%@",searchArray); 
      NSLog(@"name%@",[searchArray objectAtIndex:1]); 
    } 
0

尝试以下,

for (NSDictionary *dictionary in tempDataArray) 
{ 
    [yourTempArry addObject: dictionary]; 
} 

for (NSString * sTemp in yourTempArry) 
{ 
    NSRange titleResultsRange = [sTemp.LocationName rangeOfString:searchText options:NSCaseInsensitiveSearch]; 

    if (titleResultsRange.length > 0) 
     [searchArray addObject:sTemp]; 
}