JSON解析步骤

解析: 就是按照一种约定好的格式(假象),由后台开发人员按照格式存数据,由前端开发人员按照格式取数据.(谨记:这种格式是由后台开发人员决定的,我们无权决定)  

解析的本质:按照约定好的格式,取出我们想要的数据的过程.


JSON解析系统

     1.先获取文件路径  

   NSString *jsonPath = [[NSBundle mainBundle] pathForResource:@"Student"    ofType:@"json"];   

     2.初始化NSData对象   

NSData *data = [NSData dataWithContentsOfFile:jsonPath];   

     3.解析(数据最外层是什么类型,就用什么类型,如下)   

NSMutableArray *arr = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];


对于JSONKit 提供的解析方式是为NSString,NSData添加分类的方式,在分类中添加了解析的方法,json格式数据解析成NSArray,NSDictionary.效率仅次于系统提供的方法.
    而为NSArray,NSDictionary添加的分类的方法,则是将OC的对象,转化为JSON格式字符串.

    一.OC的数组转换成json格式    

NSArray *arr = @[@"aa",@"bb",@"cc",@"dd",@"ee"];   

         转化   

NSString *jsonStr = [arr JSONString];

  二.将字典转化为JSON格式
NSDictionary *dic = @{@"name":@"Frank",@"gender":@"man",@"age":@"18"};
    NSString *jsonStr = [dic JSONString];

    三.NSString解析

    1.先获取文件路径   

NSString *jsonPath = [[NSBundle mainBundle] pathForResource:@"Student" ofType:@"json"];   

    2.初始化NSString对象   

NSString *jsonStr = [NSString stringWithContentsOfFile:jsonPath encoding:NSUTF8StringEncoding error:nil];   

    3.解析   

NSArray *arr = [jsonStr objectFromJSONString];


   四. NSData解析

   1.先获取文件路径    

NSString *jsonPath = [[NSBundle mainBundle]       

pathForResource:@"Student" ofType:@"json"];   

   2.初始化NSData对象   

NSData *data = [NSData dataWithContentsOfFile:jsonPath];   

   3.解析

    NSArray *arr = [data objectFromJSONData];  

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。