iPhone上のJSON(二)


前回は基本的にObjcのJSONフレームワークの原理について議論しましたが、ここでは簡単にご紹介します.
CS 193 Pのクラスプログラムには、以下の関数がリストされています.
+ (id)fetchJSONValueForURL:(NSURL *)url
{
    NSString *jsonString = [[NSString alloc] initWithContentsOfURL:url
                                                          encoding:NSUTF8StringEncoding error:nil];

    id jsonValue = [jsonString JSONValue];
    [jsonString release];
    return jsonValue;
}

基本的にこの関数の方法は、もちろん.jsonファイルの場所であるインターネットアドレスを入力することです.そして流れてくるのがNSDictionary~
私が使っている間に、それを呼び出す方法を書きました.
+ (NSDictionary *)fetchLibraryInformation
{
    NSString *urlString = [NSString stringWithFormat:@"http://gzl.name/appData/MyFodian/Lib/main.json"];
    NSURL *url = [NSURL URLWithString:urlString];
	NSLog(@"fetching library data");
    return [self fetchJSONValueForURL:url];
}

この方法は私がjsonファイルを保存したアドレスを前の方法に教えて、それからこのNSDictionaryに戻って、今回の戻り値はNSDictionaryを使って、実はidとここで区別がありません.このオブジェクトを使うときにretainしなければならないのを覚えています.そうしないと、すぐになくなりますよ.JSOnValueメソッドはautoreleaseオブジェクトを返すはずです.
次はこのNSDictionaryのデータを使って引くことができます!