[iOS] JSON Framework を使う

2011年1月9日日曜日 | Published in | 0 コメント

このエントリーをはてなブックマークに追加

JSON を扱う必要が出てきたので試してみた。


JSON Framework


下記から入手できる。
JSON Framework

今回は 2.3.1 を試してみた。


インストール


インストール方法は付属の Installation.markdown に記述されている。一番簡単なのはソースコードをコピーする方法。

後は使いたい箇所でインポートして必要なメソッドを呼び出すだけ。
#import "JSON.h"


サンプル


入力したテキストを JSON としてパースし、その結果をデバッグコンソールへ書きだすサンプルを作ってみた。
- (IBAction)parse:(id)sender
{
 id result = [self.textView.text JSONValue];
 NSLog(@"%@", result);
}

JSONを書きこんでパースすると

こんな結果。日本語(UTF-8)も大丈夫そうだ。
JSONFrameworkSample[14416:207] (
        {
        id = 10331;
        name = "\U5168\U54e1\U66f8\U304d\U8fbc\U307f";
        "ssl_cert_flag" = 0;
    },
        {
        id = 10348;
        name = "\U65b0\U30d7\U30ed\U30b8\U30a7\U30af\U30c8";
        "ssl_cert_flag" = 0;
    }
)
なおキーをダブルクォーテーションで囲わない場合エラーとなった。
JSONFrameworkSample[14416:207] -JSONValue failed. Error trace is: (
    "Error Domain=org.brautaset.JSON.ErrorDomain Code=3 \"Object key string expected\"
 UserInfo=0x4bc50e0 {NSLocalizedDescription=Object key string expected}",
    "Error Domain=org.brautaset.JSON.ErrorDomain Code=3 \"Expected value while parsing array\"
 UserInfo=0x4bc5390 {NSUnderlyingError=0x4bc5350 \"Object key string expected\",
 NSLocalizedDescription=Expected value while parsing array}"
)
JSONの仕様上、文字列はダブルクォーテーションで囲うことになっている為。


ソースコード


GitHub からどうぞ。
JSONFrameworkSample at 2011-01-09 from xcatsan/iOS-Sample-Code - GitHub


参考情報


A strict JSON parser and generator for Objective-C
クラスリファレンス

[iPhone] JSON Framework の使い方(解析編) | Sun Limited Mt.
使い方の簡単な解説など

Tutorial: JSON Over HTTP On The iPhone

Responses

Leave a Response

人気の投稿(過去 30日間)