我正在尝试解析大量的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"
}
}]
有人可以帮忙吗?
答案 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”?唯一可行的方法是将它们粘贴到某种容器中,如NSArray
或NSSet
。由于JSON规范说JSON是一个数组NSArray
(或者你可以通过指定正确的标志来获得NSMutableArray
)是唯一合理的选择。