此框架采用runtime打造的高效的iOS解析库,有字典转模型、模型转字典等。
- 支持字典、字符串(Json结构)、NSData转模型
- 支持模型转字典、字符串(Json结构)、NSData
- 支持用户自定义映射字段
+ (instancetype)qs_modelWithDictionary:(NSDictionary *)dic;
+ (instancetype)qs_modelWithString:(NSString *)str;
+ (instancetype)qs_modelWithData:(NSData *)data;
- (NSDictionary *)qs_dictionaryWithModel;
- (NSString *)qs_stringWithModel;
- (NSData *)qs_dataWithModel;
#pragma mark -- runtime 字典转模型
- (void)testQSModel {
NSBundle *bundle = [NSBundle mainBundle];
NSString *path = [bundle pathForResource:@"Student" ofType:@"json"];
NSData *data = [NSData dataWithContentsOfFile:path];
Student *student1 = [Student qs_modelWithData:data];
NSDictionary *result = [student1 qs_dictionaryWithModel];
}
所有源代码均根据MIT许可证进行许可。
- NSObject+QSModel分类:为方便调用采用分类设计,所有的逻辑实现都在这个分类里面实现,其核心部分就是字典转模型、模型转字典两大类,其它的比如字符串、NSData转模型都是先转化为字典,再转化为模型,字典相当于一个中间者。
字典转模型:
模型转字典: