将 JSON 放入数组
Posted
技术标签:
【中文标题】将 JSON 放入数组【英文标题】:Putting JSON into an Array 【发布时间】:2013-03-02 22:13:04 【问题描述】:在请求和 JSON 方面,我是个菜鸟。在我的应用程序中,我发送到服务器并取回东西,所以我当然可以使用它。我尝试查找不同的东西,但似乎没有一个是我真正想要的。所以我要找回似乎格式化为 JSON 的内容。我想知道如何将其放入 NSMutable 数组中。我得到这个 JSON 的方法是使用 AFNetworking 的 AFJSONRequestOperation。
我的回复是这样的。
id = 38;
name = "St. Martin Hall";
,
id = 40;
name = "Assumptions Commons";
,
id = 41;
name = "Vickroy Hall";
,
id = 42;
name = "St. Ann Hall";
,
id = 37;
name = "Duquesne Towers";
【问题讨论】:
NSJSONSerialization
类参考,请...
【参考方案1】:
如果您的 JSON 格式像 "mainKey":[,,...]
NSError* error;
NSDictionary* json = [NSJSONSerialization
JSONObjectWithData:responseData //1
options:kNilOptions
error:&error];
NSArray* dataArray = [json objectForKey:@"mainKey"]; //2
其他 JSON 格式,例如 [,,...]
NSError* error;
NSArray* dataArray = [NSJSONSerialization
JSONObjectWithData:responseData //1
options:kNilOptions
error:&error];
我认为您的格式是案例 2:[] Array of Object
教程:http://www.raywenderlich.com/5492/working-with-json-in-ios-5
JSON:http://www.json.org
【讨论】:
谢谢!该教程确实向我展示了我做错了什么。【参考方案2】:您使用
NSJSONSerialization
类将 JSON 转换为 Foundation 对象并将 Foundation 对象转换为 JSON。
此类在 iOS 5.0+ 中可用。如果您的目标是较旧的 iOS 版本,请查看第三方 JSON 框架:
Comparison of JSON Parser for Objective-C (JSON Framework, YAJL, TouchJSON, etc)
【讨论】:
【参考方案3】:如果这就是您要返回的内容,恐怕它不是 JSON。它在某种程度上看起来确实像 javascript,但应该更像
[
"id" : 38,
"name" : "St. Martin Hall"
,
"id" : 39,
"name" : "Assumptions Commons"
]
【讨论】:
就是这样回来的。我只是没有把 [ 和 ] 和 : vs = 和 , 而不是 ; 我用了一种新方法,现在它又像你发布的那样回来了。以上是关于将 JSON 放入数组的主要内容,如果未能解决你的问题,请参考以下文章