关闭

如何使用JSON Framework库解析与生成json数据

867人阅读 评论(0) 收藏 举报

JSON Framework设置工作
为了在自己的工程项目中使用json framework框架库,必须将其导入到工程项目组中。即把JSON Framework库的Classes文件夹下所有的文件导入添加进项目中,然后在具体使用json framework的代码实现文件中添加#import "SBJson.h"导入此头文件。

使用方式——解析JSON字符串:JSONValue
1. 首先取得JSON字串

NSURL *url = [NSURL URLWithString:@"http://graph.facebook.com/cyberbuzz"];
NSString *jsonString = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];

2. 调用json framework提供的解析方法来解析这个字串,将结果存储在NSDictionary字典中

NSDictionary *items = [jsonString JSONValue];

注意:JSONValue解析后的返回值是 NSDictionary 或者是 NSArray,所以上例最好是定义返回值为id。结合上面两步我们可以构建一个方法来实现:

- (id)fetchJSONValueForURL:(NSURL *)url
{
NSString *jsonString = [[NSString alloc] initWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];
// NSLog(@"json value %@:",jsonString);
id jsonValue = [jsonString JSONValue];
[jsonString release];
return jsonValue;
}

如果是为了得到NSDictionary类型,可以如下:

- (NSDictionary *)fetchJSON:(NSString *)text
{
NSString *urlString = [NSString stringWithFormat:text];
NSURL *url = [NSURL URLWithString:urlString];
//NSLog(@"fetching data");
return [self fetchJSONValueForURL:url];
}

3. 可以通过NSLog()来确认解析的结果,或是通过objectForKey等方法来取得JSON中的值

NSLog(@"Parsed JSON:%@",[items description]);

使用方式——将NSDictionary字典数据编码成JSON字符串:JSONFragment

from:http://www.cnblogs.com/lovecode/archive/2011/12/27/2303658.html

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1752026次
    • 积分:16000
    • 等级:
    • 排名:第678名
    • 原创:209篇
    • 转载:274篇
    • 译文:0篇
    • 评论:259条