duancong7573
2014-08-17 15:05
浏览 83

使用IOS解析基本JSON

my JSON string looks like this:

{"msg":"The email: ddhaxor97@gmail.com doesn't exist, cannot retrieve data","code":120}

My parsing code looks like this

NSData *data= [responseString dataUsingEncoding:NSUTF8StringEncoding];
NSError *jsonError = nil;
NSArray *jsonArray = (NSArray *)[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:&jsonError];
NSLog(@"Json array = %@", jsonArray);

How do I get the values out of JSON Array, if I print JSON array (i.e. the last line) I get this:

Json array = { code = 120; msg = "The email: ddxxx@gmail.com doesn't exist, cannot retrieve data"; }

If I try using [jsonArray objectAtIndex:0] then it fails. So why can't I access it?

my php looks like this to generate the string:

return json_encode(array("msg" => $msg, "code" => $code));

I am totally stuck on it, all the examples show me how to parse a dictionary but not a little array like this. Please help :(

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • douxing2652 2014-08-17 15:09
    已采纳

    This is probably happening because "arrays" in JSON are actually "dictionaries" in iOS. Try using:

    NSDictionary *dict = (NSDictionary *)[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:&jsonError];
    [dict objectForKey:"code"];
    
    点赞 打赏 评论

相关推荐 更多相似问题