IOS学习笔记38——NSJSONSerialization使用
在之前的学习笔记《IOS学习笔记33—XML解析之KissXML的使用》中介绍了如何解析XML格式的数据,今天简要介绍下如何解析JSON格式的数据,JSON数据结构以其轻量化的结构体和良好的可读性被越来越广泛的运用,特别在移动开发上,手机的流量是宝贵资源,更要求使用轻量级的数据格式进行数据传输。关于在iOS平台上进行JSON解析,已经有很多第三方的开源项目,比如SBJson、JSONFramwork等,用的也非常广泛,自从iOS5.0以后,苹果推出了SDK自带的JSON解决方案NSJSONSerialization,这是一个非常好用的JSON生成和解析工具,效率也是比其他第三方开源项目的高很多,详情可查看Developer Guider。
关于NSJSONSerialization,官方文档中有如下介绍:
You use the NSJSONSerialization
class to convert JSON to Foundation objects and convert Foundation objects to JSON.
An object that may be converted to JSON must have the following properties:
The top level object is an NSArray
or NSDictionary
.
All objects are instances of NSString
, NSNumber
, NSArray
, NSDictionary
, or NSNull
.
All dictionary keys are instances of NSString
.
Numbers are not NaN or infinity.
我们能利用NSJSONSerialization将JSON转换成Foundation对象,也能将Foundation对象转换成JSON,转换成JSON的对象必须具有如下属性:顶层对象必须是NSArray或者NSDictionary所有的对象必须是NSString、NSNumber、NSArray、NSDictionary、NSNull的实例所有NSDictionary的key必须是NSString类型数字对象不能是非数值或无穷NSString *status = [resultJSON objectForKey:@"status"];
对Android&IOS感兴趣的朋友可以加入我们的讨论QQ群,在这里,我们只讨论干货:
1群:220223507(已满)
2群:282552849
欢迎关注我的新浪微博和我交流:@唐韧_Ryan