NSDictionary *jsonParser = [NSJSONSerialization JSONObjectWithData:WebApiから取得した文字列のデータ型 options:NSJSONReadingAllowFragments error:nil];
こんな感じで、Dictionaryに格納したら、後はDictionaryをガンガン使っていけばいいだけです。
■例
{"resulr":"true","item_list":{"item_1":"apple","item_2":"banana","item_3":"melon"}}
こんな、文字列をWebから貰ったとします。。
//文字列型をデータ型に型変更
NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding];
//ディクショナリに入れる
NSDictionary *jsonParser = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:nil];
//resultを取得
NSDictionary *next = [jsonParser objectForKey:@"result"];
//LOG
NSLog(@"%@", [jsonParser objectForKey:@"result"]);
//深めの階層も大丈夫!!
NSDictionary *country = [jsonParser objectForKey:@"item_list"];
NSLog(@"%@", [jsonParser objectForKey:@"item_list"]);
//取得したい値を取得
NSDictionary *item = [country objectForKey:@"item_1"];
NSLog(@"%@", [country objectForKey:@"item_1"]);
■結果
2013-07-31 01:59:01.046 jsontest[678:c07] {"result":"true","item_list":{"item_1":"apple","item_2":"banana","item_3":"melon"}}
2013-07-31 01:59:01.048 jsontest[678:c07] true
2013-07-31 01:59:01.048 jsontest[678:c07] {
"item_1" = apple;
"item_2" = banana;
"item_3" = melon;
}
2013-07-31 01:59:01.048 hidouki[678:c07] apple
こんな感じになりました。
そもそもDictionary型をちゃんと理解していないので、
こんな使い方でいいのかわかりませんが。。。。
とりあえずは、APIの戻り値をさばけました。。
0 件のコメント:
コメントを投稿