Mac iOS Json 操作Model to JSON

时间:2022-06-01 18:00:35
在移动网络时代,json成为了主流的数据交换格式。如何能够方便快捷的创建、转化、传递json文件称为了开发者必备的技能。幸好,我们生活在开源时代,很多功能不需要我们重现造*。今天我推荐一款开源json处理库。
项目地址:https://github.com/icanzilb/JSONModel
我要实现class对象可以输出下列json:
其实直接编写也很容易,不过采用对象的方式后期维护十分麻烦。因而我把上述json抽象成了class。如下

JSContentsModel.h

```

import JSONModel.h

import RFIConModel.h

@interface JSContentsModel : JSONModel

@property (strong, nonatomic) NSArray * images;
@end
```

继承了JSONModel后,JSContentsModel就可以*的转化json了。其中的images就是对json中的images数组的抽象。下面,我将对数组内容进行抽象。

RFIconModel
```

@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]);