JSON解析01

JSON

  • json是一种轻量级的数据格式,一般用于数据交互
  • 服务器返回给客户端的数据,一般是JSON或者XML格式(文件下载除外)
  • JSON的格式很像OC中的字典和数组
    {“name”:"jack","age":"10"} {"name":["jack","rose","jim"]}

  • 标准JSON格式的注意点:key必须要用双引号

  • 要想从JSON中挖掘出具体的数据,得对JSON进行解析

  • JSON转换为OC数据类型

JSON OC
大括号 {} NSDictionary
中括号 [] NSArray
双引号 "" NSString
数字 10,10.8 NSNumber
  • JSON的解析方案

  • 第三方框架:JSONKit,SBJson

  • 苹果框架原生(自带):NSJSONSerialization

  • NSJSONSerialization的常见方法

  • JSON数据转为OC对象

+(id)JSONObjectWithData:(NSData *)data options:(NSJSONReadingOptions)
opt error:(NSError **)error;
   NSDictionary *dic=[NSJSONSerialization JSONObjectWithData:data1
 options:kNilOptions error:nil];
  • 对象转为JSON
    NSDictionary *jrDict=@{@"color":@"red",@"number":@20};
    NSData * jrData=[NSJSONSerialization dataWithJSONObject:jrDict 
options:kNilOptions error:nil];
    NSString * jrString=[[NSString alloc]initWithData:jrData 
encoding:NSUTF8StringEncoding];

客户端向服务器发送请求,客户端传回NSData的JSON数据,后再转为OC对象的数据类型,再转化为模型(面向对象),传给客户端

你可能感兴趣的:(JSON解析01)