现在您可以使用JSONModel轻松解决这个问题。JSONModel 是一个基于 Class 对对象进行一般序列化/反序列化的库。您甚至可以使用基于非 nsobject 的属性,例如int
,short
和float
. 它还可以满足嵌套复杂的 JSON。它为您处理错误检查。
鉴于此 JSON{"firstname":"Jenson","surname":"Button"}
反序列化示例。在头文件中:
#import "JSONModel.h"
@interface Person : JSONModel
@property (nonatomic, strong) NSString* firstname;
@property (nonatomic, strong) NSString* surname;
@end
在实现文件中:
#import "JSONModelLib.h"
#import "yourPersonClass.h"
NSString *responseJSON = /*from somewhere*/;
Person *person = [[Person alloc] initWithString:responseJSON error:&err];
if (!err)
{
NSLog(@"%@ %@", person.firstname, person.surname):
}
序列化示例。在实现文件中:
#import "JSONModelLib.h"
#import "yourPersonClass.h"
Person *person = [[Person alloc] init];
person.firstname = @"Jenson";
person.surname = @"Uee";
NSLog(@"%@", [person toJSONString]);