如何解析没有密钥的JSON?

时间:2012-08-20 19:23:16

标签: objective-c json

我正在尝试解析大量的JSON,结果发现它是一个由20个字典组成的大数组。我只是想知道如何将其解析为多个NSDictionaries? 我以前只是用JSON做这个:

NSDictionary *tDic = [NSJSONSerialization JSONObjectWithData:responseObject options:kNilOptions error:&error];

但是我试图解析的JSON看起来像这样:

[{
"key": "value"
"key": {
    "key": "value"
    "key": "value"
    }
},
{
"key": "value"
"key": {
    "key": "value"
    "key": "value"
    }
},
{
"key": "value"
"key": {
    "key": "value"
    "key": "value"
    }
}]

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:3)

您所要做的就是改变它:

NSDictionary *tDic = [NSJSONSerialization JSONObjectWithData:responseObject options:kNilOptions error:&error];

为:

NSArray *tArray = [NSJSONSerialization JSONObjectWithData:responseObject options:kNilOptions error:&error];

然后你拥有的NSArray充满NSDictionary个。

答案 1 :(得分:-1)

你期待什么?您的JSON是一个字典数组,因此NSJSONSerialization返回给您。别的什么都不对。

此外,该方法应如何向您返回“多个NSDictionaries”?唯一可行的方法是将它们粘贴到某种容器中,如NSArrayNSSet。由于JSON规范说JSON是一个数组NSArray(或者你可以通过指定正确的标志来获得NSMutableArray)是唯一合理的选择。