2013-09-10 2 views
-2

Мой JSON ответ формиат данные, как: -Как разобрать ответ api на вид таблицы?

[{"0":"1","id":"1","1":"Pradeep","name":"Pradeep","2":null,"sender":null,"3":null," 

Так разобрать «имя» на просмотр таблицы?

Моя собственная реализация: -

Я новичок в разработке Иос, пожалуйста, помогите мне

-(void)connectionDidFinishLoading:(NSURLConnection *)connection 
{ 
    NSDictionary *allDataDictionary=[NSJSONSerialization JSONObjectWithData:webData 
options:0 error:nil]; // response saved in allDataDictionary 

    NSDictionary *feed=[allDataDictionary objectForKey:@"feed"]; // feeds entry 

    NSArray *feedforentry=[feed objectForKey:@"entry"]; 

    for(NSDictionary *diction in feedforentry) 
    { 
     NSDictionary *title=[diction objectForKey:@"title"]; 
     NSString *label=[title objectForKey:@"label"]; 
     [array addObject:label]; 
    } 
    [[self JustConfesstable]reloadData]; // reload table  
} 
+0

Отсутствует часть JSON ... –

+0

NSData * jsonData = [jsonString dataUsingEncoding: NSUTF8StringEncoding]; id jsonObject = [NSJSONSerialization JSONObjectWithData: jsonData options: kNilOptions error: & jsonError]; if ([jsonObject isKindOfClass: [NSArray class]]) { arrResult = (NSArray *) jsonObject; } –

+0

Rinkal Rajoria проверить мое решение ... – Jitendra

ответ

0

Вы должны использовать JSON парсер. Я буду рекомендовать: https://github.com/johnezang/JSONKit

С, что вы можете сделать:

JSONDecoder *jsonKitDecoder = [JSONDecoder decoder]; 
NSError *error = nil; 
id objectFromJson = [jsonKitDecoder objectWithData:data error:&error]; 
+0

Любые причины порекомендовать парсер JSON над JSONSerialization? –

+0

Это было всего лишь предложение ... Я нашел его гораздо удобнее в использовании, чем JSONSerialization и намного лучшую производительность. Не поймите, почему вы проголосовали за это. –

+0

NSJSONSerialization является родным, поэтому я не думаю, что JSON лучше, чем NSJSONSerialization –

1

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

NSDictionary *json = [NSJSONSerialization JSONObjectWithData:data options: NSJSONReadingMutableContainers error: &error]; 

    NSLog(@"%@",json); 

    NSLog(@"%@",delegate.firstArray); 

    NSArray * responseArr = json[@"Deviceinfo"]; 

    NSArray * firstarray=[[NSArray alloc]init]; 

    for(NSDictionary * dict in responseArr) 
    { 
     [firstarray addObject:[dict valueForKey:@"name"]]; 
    } 

первый массив содержит имена .. что вы хотите от ответа json.

, а затем передать эти данные в tablview. что вы хотите сделать здесь, вы получите массив данных имени.

+0

NSLog (@ "% @", delegate.firstArray); NSArray * responseArr = json [@ "Deviceinfo"]; Что такое делегат и первый массив? Это порождает ошибку, которая не указана идентификатором –

+0

Я объявляю, что массив в appdelegate, если у вас есть массив taht-класса, который вы объявляете прямым Firstarray. и deviceinfo - это мой основной ключ nsdictionary .. – Jitendra

+0

@ Rinkal проверить мои изменения .. – Jitendra

Смежные вопросы