在移动网络时代,json成为了主流的数据交换格式。如何可以方便快捷的建立、转化、传递json文件称为了开发者必备的技能。幸亏,咱们生活在开源时代,不少功能不须要咱们重现造轮子。今天我推荐一款开源json处理库。 项目地址:https://github.com/icanzilb/JSONModel 我要实现class对象能够输出下列json:
其实直接编写也很容易,不过采用对象的方式后期维护十分麻烦。于是我把上述json抽象成了class。以下
JSContentsModel.h
```git
JSONModel.h
RFIConModel.h
@interface JSContentsModel : JSONModelgithub
@property (strong, nonatomic) NSArray
@end
```
继承了JSONModel后,JSContentsModel就能够自由的转化json了。其中的images就是对json中的images数组的抽象。下面,我将对数组内容进行抽象。
RFIconModel.h
```
@protocol RFIConModel @end数组
@interface RFIConModel : JSONModel
@property(nonatomic,strong) NSString * filename;
@property(nonatomic) NSNumber * imageWidth;
@property(nonatomic)NSNumber * imageHeight;
@property(nonatomic)NSString * scale;
@property(nonatomic)NSString * comments;网络
@end
```测试
RFIconModel对象是对images数组内容的抽象。这样就完成了对json文件的所有工做。怎么样简单又快捷吧。 最后测试代码以下:
JSONModelArray * jImages=[[JSONModelArray alloc] initWithArray:images modelClass:[RFIConModel class]]; JSContentsModel * oneModel=[[JSContentsModel alloc] init]; oneModel.images=images; NSLog(@"%@",[oneModel toJSONString]);