摘要:本文将带你了解IOS开发入门iOS开源项目:JSONKit,希望本文对大家学IOS有所帮助。
本文将带你了解IOS开发入门iOS开源项目:JSONKit,希望本文对大家学IOS有所帮助。
iOS开源项目:JSONKit,一个Json解析库,其特点是代码简单,只有一个.h和.m文件。
https://github.com/johnezang/JSONKit
JSON(JavaScript Object Notation)是一个轻量级的,基于文本的,序列结构化数据格式. 由RFC 4627定义.提供以下主要类型:
null
Boolean true and false
Number
String
Array
Object (a.k.a. Associative Arrays, Key / Value Hash Tables, Maps, Dictionaries, etc.)
对应的Objective—C的类:
JSON
Objective-C
null NSNull
trueandfalse NSNumber
Number NSNumber
String NSString
Array NSArray
Object NSDictionary
1、使用:
NSString *jsonstring =@"[{\"age\":18,\"book\":{\"price\":23.2,\"title\":\"boook111\"},\"name\":\"samyou\"},{\"age\":22,\"book\":{\"price\":33,\"title\":\"booook222\"},\"name\":\"samsam\"}]";
NSData *data=[jsonstring dataUsingEncoding:NSUTF8StringEncoding];
NSArray *arr=(NSArray *)[data mutableObjectFromJSONData];
NSLog(@"count=%d",arr.count);
for(int i=0;i
使用上很简单,利用字典键值对获取就行,参考https://stephen830.iteye.com/blog/1718550。
2、原理:
JSONKit的源码只有个两个文件,先看看解析JSON的流程。
NSArray *arr=(NSArray *)[data mutableObjectFromJSONData];
这个方法是NSData的Category,里面调用了
JSONDecoder的解析方法:
[JSONDecoder decoderWithParseOptions:parseOptionFlags]) mutableObjectWithData:self error:error];
总的来说,JSONKit对
NSArray
NSString
NSData
NSDictionary
都进行了序列化和反序列化的扩展,可以把这些对象与JSON对象之间相互转换。
由于JSONKit没有使用ARC,所以使用时不要忘了在build phases -》compile sources选择文件后面加-fno-objc-arc参数。
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之IOS频道!
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号