2013-02-27 64 views
-2

我在JSON以下响应,我如何解析它解析JSON响应iphone目标C

[{"WordArray":[{"Id":11,"Word1":"ODDER","Category":"Dyr","Differculty":1,"Language":"Danish"},{"Id":225,"Word1":"PRAG","Category":"International by","Differculty":1,"Language":"Danish"}]},{"WordArray":[{"Id":3,"Word1":"TIGER","Category":"Dyr","Differculty":1,"Language":"Danish"},{"Id":154,"Word1":"BOLLE","Category":"Mad og drikke","Differculty":1,"Language":"Danish"}]}, 
{"WordArray":[{"Id":3,"Word1":"TIGER","Category":"Dyr","Differculty":1,"Language":"Danish"},{"Id":147,"Word1":"PIZZA","Category":"Mad og drikke","Differculty":1,"Language":"Danish"}]}] 

我曾尝试没有运气以下不确定

NSMutableArray* json = [NSJSONSerialization JSONObjectWithData:responseData options:kNilOptions error:&error]; 

NSMutableArray * roundWords = [[NSMutableArray alloc]retain ]; 

roundWords = [json objectAtIndex:i]; 

JSON包含了我3'WordArray',但我不确定如何继续.. 如何迭代在WordArray和NSLog Word1值中的每个项目,例如?

谢谢!

+0

另外请注意,这甚至与Xcode没有远程相关。 – 2013-02-27 18:25:31

回答

1

我如何遍历在WordArray和NSLog的每个项目的字1的值

使用快速枚举。

for (NSDictionary *dict in array) { 
    NSLog(@"%@", [dict objectForKey:@"Word1"]); 
} 

顺便问一下,你的代码是错误的,在几个地方:

NSMutableArray *roundWords = [[NSMutableArray alloc] retain]; 
roundWords = [json objectAtIndex:i]; 

其中,一不使用retain链与alloc这样。使用init来初始化一个对象。

二:除非你使用ARC(你没有),你与该行的内存泄漏 - 指针到原来的数组,因为重新分配别的事情被丢弃。

三:[json objectAtIndex:i]不是NSMutableArray - 这是一个NSDictionary(这是不可改变的的方式声明不是魔术 - 但是你宣布你的变量,它不会影响NSJSONSerialization返回一个不可改变的事实。字典,除非另有规定)。