需要在目标c中使用示例JSON解析器

时间:2010-10-26 22:18:49

标签: iphone objective-c parsing json

我想知道在目标C中解析一个json对象。我通过加载一个url获得了JSON对象。你可以告诉我怎么做或任何样品或任何参考。

以下是json示例。

{
"name":"WFNX",
"now":
     {
     "id":"17749528",
     "song":"Back Down South",
     "artist":"Kings Of Leon"
     },
"desc":"101.7 - True Alternative",
"audiostream":"http:\/\/www.streamaudio.com\/stations   \/asx\/wfnx_fm.asx",
"genre":"Rock",
"tz":"EST",
"id":"17880",
"yes":"station"
}

3 个答案:

答案 0 :(得分:7)

code.google.comGithub上查看Objective-C的此JSON框架。

使用非常简单。您实例化您的SBJSON对象,然后使用您的缓冲区调用 objectWithString

SBJSON * parser = [[SBJSON alloc] init];
NSString * buffer = @"{"name":"WFNX"}";
NSError* error = NULL;
// the type of json will depend on the JSON data in buffer, in this case, it will be 
// and NSDictionary with one key/value pair "name"->"WFNX"
id json = [parser objectWithString:buffer error:&error];

答案 1 :(得分:5)

有一些,见:

http://code.google.com/p/json-framework/
http://github.com/schwa/TouchJSON

列出一个大清单:

http://www.json.org/

是JSON

的绝佳参考网站

答案 2 :(得分:0)

我正在使用YAJLiOS解析器,不错并且与ARC兼容,这里是文档

http://gabriel.github.com/yajl-objc/

并在github上解析器本身

https://github.com/gabriel/yajl-objc

离。

   NSData *JSONData = [NSData dataWithContentsOfFile:@"someJson.json"];
   NSDictionary *JSONDictionary = [tempContainer yajl_JSON];

如果需要数组

,则通过objectForKey方法或valueFoKey方法获取对象