[PR]
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
ゲーム、アニメ、CG、iOS開発など思いついたことを記事にしています。 管理人が3人いますので、記事にまとまりはないと思います。 iPhoneアプリのレビュー依頼も受け付けています。
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
- (void) liveOperationSucceeded:(LiveOperation *)operation
{
if (operation.rawResult)
{
NSError *error = nil;
⑴ NSData *jsonData = [operation.rawResult
dataUsingEncoding:NSUTF8StringEncoding];
⑵ NSDictionary *jsonResponse = [NSJSONSerialization
JSONObjectWithData:jsonData
options:NSJSONReadingAllowFragments
error:&error];
⑶ NSArray *array = [jsonResponse objectForKey:@"data"];
for (NSDictionary *dic in array) {
NSLog(@"name:%@", [dic objectForKey:@"name"]);
NSLog(@"size:%@", [dic objectForKey:@"size"]);
NSLog(@"type:%@", [dic objectForKey:@"type"]);
NSLog(@"updated_time:%@", [dic objectForKey:@"updated_time"]);
}
}
}
⑴最初に取得したjsonデータを変換します。(NSString -> NSData)
⑵次に「NSJSONSerialization」で NSData -> NSDictionary に変換します。
⑶dataキーを指定するとファイルリスト数分の配列が取得できます。あとは必要な値をキー指定するだけです。
OneDriveから取得できた文字コードはUTF8でした。他の文字コードも使用されるのかは調査中です。
jsonパースする際に、NSJSONSerialization(Apple)を使用するかJsonKit(オープンソース)を使用するか迷いましたが、NSJSONSerializationの方がパフォーマンスが良いとの情報がありましたので、
こちらを使用しました。
(取得するデータによってパフォーマンス結果は異なるようですが・・・)