當前位置:成語大全網 - 新華字典 - 如何使用JSON Framework庫解析與生成json數據

如何使用JSON Framework庫解析與生成json數據

JSON

Framework設置工作

為了在自己的工程項目中使用json framework框架庫,必須將其導入到工程項目組中。即把JSON Framework庫的Classes文件夾下所有的文件導入添加進項目中,然後在具體使用json framework的代碼實現文件中添加#import

"SBJson.h"導入此頭文件。

使用方式——解析JSON字符串:JSONValue

1. 首先取得JSON字串

NSURL *url = [NSURL URLWithString:@"/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