これで、 JSONModelを使用してこの問題を簡単に解決できます。JSONModelは、クラスに基づいてオブジェクトを一般的にシリアル化/逆シリアル化するライブラリです。、、などint
のプロパティに基づいた非nsobjectを使用することもできます。ネストされた複雑なJSONにも対応できます。エラーチェックを処理します。short
float
この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]);