git下载jsonkit.h/jsonkit.m两个文件,现在要翻墙了,吐槽我大铁道部坑了大爹,连stackoverflow也不能幸免
在viewcontroller.m中添加以下代码
然后在viewDidLoad中添加以下代码
- NSString *str = [NSString stringWithFormat:@"{\"id\":1,\"age\":\"2\"}"];
- NSDictionary *resultsDictionary = [str objectFromJSONString];
- myLabel.text = [NSString stringWithFormat:@"%i",[[resultsDictionary valueForKey:@"id"]intValue]];
Ok,是不是很简单?
大家用json的时候,都知道json返回的结果集里有数组NSArray和数据字典NSDictionary之分,但是如何正确的识别结果集的类型呢?这里有个小技巧,可以使用nslog来查看对象的class是什么,参考以下代码:
- NSLog(@"json.class = %@", [object class]);
通过以上语句,就可以判断接收结果集的时候是用NSArray还是NSDictionary了。
-
- NSData *data = [@"{\"employees\":[{\"firstName\":\"Aries\",\"lastName\":\"Liu\"},{\"firstName\":\"Vivian\",\"lastName\":\"Jiang\"}]}" dataUsingEncoding:NSUTF8StringEncoding];
- NSLog(@"%@", [data class]);
- NSDictionary *dicClass = [data objectFromJSONData];
- NSLog(@"dicClass = %@, dicClass.Class = %@", dicClass, [dicClass class]);
-
-
- NSLog(@"class = %@", [[dicClass objectForKey:@"employees"] class]);
- NSArray *arrayEmployees = [dicClass objectForKey:@"employees"];
- NSLog(@"arrayEmployees = %@", arrayEmployees);
惯例附上源代码:
csdn,蛋疼今天Mac传不了,下次传吧
新浪微盘
原文链接http://blog.csdn.net/aries4ever/article/details/8525758