iPhone开发之Json数据的解析

网络中数据的传输往往是以Json或XML格式进行的,如新浪微博、腾讯微博、人人网等。今天主要介绍一下ios下Json数据的解析。

首先是使用TouchJson进行解析:

TouchJson点击下载

首先导入

将Source文件加下的所以文件导入工程,在合适的位置添加CJSONDeserializer.h头文件

代码:

NSString *jsonStr = <p class="p1">@"{\"customer\":[{\"name\":\"roamer\",\"ycount\":\"232.4\",\"sumcount\":\"322.3\"},{\"name\":\"<span class="s1">王三</span>\",\"ycount\":\"221.2\",\"sumcount\":\"1123.2\"},{\"name\":\"<span class="s1">李四</span>\",\"ycount\":\"1221.2\",\"sumcount\":\"12123.2\"}]}"<span class="s2">;</span></p>;       NSData *jsonData = [jsonStr dataUsingEncoding:NSUTF8StringEncoding];       NSError *error;       NSMutableDictionary *root = [[CJSONDeserializer deserializer] deserialize:jsonData error:&error];       NSLog(@"Customers:%@", root);       NSMutableArray *customers = [root objectForKey:@"customer"];       NSString *jsonTextStr = @"姓名:\n";       for (NSMutableDictionary *customer in customers) {           NSString *name = [customer objectForKey:@"name"];           name = [name stringByAppendingString:@"\n"];           jsonTextStr = [jsonTextStr stringByAppendingString:name];           NSLog(@"customer:%@",[customer objectForKey:@"name"]);       }  

输出结果:

Customers:{       customer =     (                   {               name = roamer;               sumcount = "322.3";               ycount = "232.4";           },                   {               name = "\U738b\U4e09";               sumcount = "1123.2";               ycount = "221.2";           },                   {               name = "\U674e\U56db";               sumcount = "12123.2";               ycount = "1221.2";           }       );   }   2012-06-15 14:08:20.406 TouchJsonTest[1495:f803] customer:roamer   2012-06-15 14:08:20.406 TouchJsonTest[1495:f803] customer:王三   2012-06-15 14:08:20.406 TouchJsonTest[1495:f803] customer:李四  

下面使用SBJson

SBJson下载
首先导入

将Classes文件加下的所以文件导入工程,在合适的位置添加SBJson.h头文件

代码:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/pszzj.html