ios经常会遇到解析xml或者json数据,这两种数据格式都是非常常用的。
那么下来说说关于ios解析json的一些方法。
在ios开发中解析json的方法有很多种,也有老外写的很多的API是专门用来解析json数据的,现在来大概一一列举一下一些比较常见的一些解析json的方法。
1.touchJson
2.jsonFramework(SBJson)
3.jsonKit
4.NSJSONSerialization(系统方法)
经验证,jsonkit是这几者当中最优秀的选择,体积小,而且解析效率不低于系统解析效率,乖乖咙滴咚!自然jsonKit是解析json数据的不二选择。
TrouchJSON
导入TrouchJSON类的头文件 CJSONDeserializer.h
然后将获取到的JSON字符串经过反序列化的方式,反序列化成为一个字典,
NSDictionary *jsonData=[[CJSONDeserializer deserializer] deserialize:[jsonString dataUsingEncoding:NSUTF8StringEncoding] error:&error];
然后在从NSDictionary里面以此取值
导入TrouchJSON类的头文件 CJSONDeserializer.h
然后将获取到的JSON字符串经过反序列化的方式,反序列化成为一个字典,
NSDictionary *jsonData=[[CJSONDeserializer deserializer] deserialize:[jsonString dataUsingEncoding:NSUTF8StringEncoding] error:&error];
然后在从NSDictionary里面以此取值
SBJSON
导入SBJSON类的头文件 SBJson.h
然后将获取到的JSON字符串经过反序列化的方式,反序列化成为一个NSDictionary,
NSDictionary*jsonData=[jsonString JSONValue];
或者实例化SBJsonParser对象
SBJsonParser *jsonPaser = [[SBJsonParser alloc] init];
NSError *error=nil;
json=[jsonPaser objectWithString:jsonString error:&error];
然后在从NSDictionary里面以此取值
jsonKit
jsonKit只有2个文件,jsonkit.h and .m体积小、轻便,解析起来,也灰常给力简洁
NSData *jsondata = [jsonstring dataUsingEncoding:NSUTF8StringEncoding];
NSDictionary *dic=[jsondata objectFromJSONData];
ok,打完收工!
这些库在github上面都能找的到的,不信你就去试试看!
微信公众平台已开通,加个关注呗。我们一起学习,一起进步
微信号点击添加关注:《IOS开发总汇》
百度知道群:开发者俱乐部