iOS to parse JSON?



我从服务器收到以下响应

[{"id":"16","name":"Bob","age":"37"},{"id":"17","name":"rob","age":"28"}];

我正在使用AFNetworking框架,

我在NSData中得到了上述响应,然后使用以下代码,我能够以NSDictionary收集数据

NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingAllowFragments error:&error];

但是如何解析该NSDictionary"name""age"值呢?

你期望 NSDictionary,但你的回答给了你字典数组,试试这个:

NSArray *array = [NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingAllowFragments error:&error];
for (NSDictionary *dict in array)
{
    NSLog(@"Name: %@, age: %@", dict[@"name"], dict[@"age"]);
}

//扩展

从下面的注释来看,您似乎有一个来自响应的字符串,而不是上面代码中显示的 NSArray。您可以解析字符串以获取所需的数据,也可以将其转换回 json 和 NSArray:

    NSString * jsonString = [NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingAllowFragments error:&error];
    NSData *data = [jsonString dataUsingEncoding:NSUTF8StringEncoding];
    NSArray *array = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil];
   //As I post above

现在你应该有一个NSArray,我的代码应该可以完成这项工作。

相关内容

最新更新