我有一个 JSON 字符串(来自 PHP 的json_encode()
看起来像这样:
[{"id": "1", "name":"Aaa"}, {"id": "2", "name":"Bbb"}]
我想将其解析为我的 iPhone 应用程序的某种数据结构。我想对我来说最好的事情就是拥有一个字典数组,因此数组中的第 0 个元素是一个带有键的字典"id" => "1"
and "name" => "Aaa"
.
我不明白如何NSJSONSerialization
但存储数据。到目前为止,这是我的代码:
NSError *e = nil;
NSDictionary *JSON = [NSJSONSerialization
JSONObjectWithData: data
options: NSJSONReadingMutableContainers
error: &e];
这只是我在另一个网站上看到的示例。我一直在尝试阅读JSON
通过打印出元素的数量和类似的东西来对象,但我总是得到EXC_BAD_ACCESS
.
我该如何使用NSJSONSerialization
解析上面的JSON,并将其转换成我提到的数据结构?
您的根 json 对象不是字典而是数组:
[{"id": "1", "name":"Aaa"}, {"id": "2", "name":"Bbb"}]
这可能会让您清楚地了解如何处理它:
NSError *e = nil;
NSArray *jsonArray = [NSJSONSerialization JSONObjectWithData: data options: NSJSONReadingMutableContainers error: &e];
if (!jsonArray) {
NSLog(@"Error parsing JSON: %@", e);
} else {
for(NSDictionary *item in jsonArray) {
NSLog(@"Item: %@", item);
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)