2012-04-17 8 views
15

私はiOSのNSStringオブジェクトとしてJSON文字列を持っています。私はこれを解析し、JSON文字列内の指定されたパラメータを取り出す必要があります。これを解析する効率的な方法はありますか、部分文字列などを検索する唯一の方法ですか?iOS JSON NSString Parse

答えて

48

のiOS 5でそれを行う方法はNSJSONSerializationクラスを使用することです。あなたはJSONObjectWithDataがあなたのJSON文字列が辞書や配列表しているかどうかによって、NSDictionaryのかNSArrayのいずれかを返すことに注意してください

NSData *jsonData = [myJsonString dataUsingEncoding:NSUTF8StringEncoding]; 
NSError *e; 
NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:jsonData options:nil error:&e]; 

JSONObjectWithData

最初NSDataオブジェクトへのあなたの文字列を変換すると、クラスメソッドを呼び出します。 。

+9

コンパイラ警告を抑制するオプションには、0またはNSJSONReadingMutableContainersを使用する必要があります。 –

0

JSON文字列をObjective-Cオブジェクト(NSArrayおよびNSDictionary)に変換するための優れたフレームワークは、SBJsonGithub)です。

使用法:

NSDictionary *dict = [myJsonString JSONValue]; 
+0

iOS 5のJSONで行う方法はありますか? – user1120008

+0

はい、それはより関与しており、アプリケーションをiOS 5でのみ実行するように制限しています。 –

+0

SBJSONはあなたの友人です。公式のAPIよりもはるかに便利で、旧バージョンのiOSでも動作します。 – aroth