使用 IOS 解析基本 JSON
Posted
技术标签:
【中文标题】使用 IOS 解析基本 JSON【英文标题】:Parsing basic JSON with IOS 【发布时间】:2014-08-17 15:05:04 【问题描述】:我的 JSON 字符串如下所示:
"msg":"邮箱:ddhaxor97@gmail.com 不存在,无法找回 数据","代码":120
我的解析代码是这样的
NSData *data= [responseString dataUsingEncoding:NSUTF8StringEncoding];
NSError *jsonError = nil;
NSArray *jsonArray = (NSArray *)[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:&jsonError];
NSLog(@"Json array = %@", jsonArray);
如果我打印 JSON 数组(即最后一行),我如何从 JSON 数组中获取值:
Json 数组 = 代码 = 120; msg = "邮箱:ddxxx@gmail.com 不存在,无法检索数据";
如果我尝试使用[jsonArray objectAtIndex:0]
,那么它会失败。那为什么我不能访问它呢?
我的 php 看起来像这样生成字符串:
return json_encode(array("msg" => $msg, "code" => $code));
我完全坚持下去,所有的例子都向我展示了如何解析字典,而不是像这样的小数组。请帮忙:(
【问题讨论】:
【参考方案1】:这可能是因为 JSON 中的“数组”实际上是 ios 中的“字典”。尝试使用:
NSDictionary *dict = (NSDictionary *)[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:&jsonError];
[dict objectForKey:"code"];
【讨论】:
以上是关于使用 IOS 解析基本 JSON的主要内容,如果未能解决你的问题,请参考以下文章