在移動網絡時代,json成為了主流的數據交換格式。如何能夠方便快捷的創建、轉化、傳遞json文件稱為了開發者必備的技能。幸好,我們生活在開源時代,很多功能不需要我們重現造輪子。今天我推薦一款開源json處理庫。項目地址:https://github.com/icanzilb/JSONModel我要實現class對象可以輸出下列json:
其實直接編寫也很容易,不過采用對象的方式后期維護十分麻煩。因而我把上述json抽象成了class。如下
JSContentsModel.h
```
JSONModel.h
RFIConModel.h
@interface JSContentsModel : JSONModel
@PRoperty (strong, nonatomic) NSArray
@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]);
新聞熱點
疑難解答