NSJSONSerialization是iOS 5.0新增的類,用來盡心對Json數據的解析。使用方法以下:async
Json To Foundationide
#define kGlobalQueue dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0)url
-(void) loadJsonData:(NSURL *)urlspa
{3d
dispatch_async(kGlobalQueue, ^{orm
NSData *data = [NSData dataWithContentsOfURL:url];get
[self performSelectorOnMainThread:@selector(parseJsonData:) withObject:data waitUntilDone:NO];it
});io
}
-(void) parseJsonData:(NSData *)data
{
NSError *error;
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
if (json == nil) {
NSLog(@"json parse failed \r\n");
return;
}
//此處經過json字典變量來讀取數據
}
Foundation To Json
- (void)convertToJson: (NSData *)data
{
if ([NSJSONSerialization isValidJSONObject:data])
{
NSError *error;
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:data options:NSJSONWritingPrettyPrinted error:&error];
NSString *json =[[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
NSLog(@"json data:%@",json);
}
}