http://blog.csdn.net/remote_roamer/article/details/7021640
1,访问 SBJson的项目官网,并且下载 https://github.com/stig/json-framework/downloads
注意:按照作者的说明,
SBJson v3.1alpha3 - source and API docs for Mac and iOS development, now with ARC support!
只有在3.1的版本上,才支持xcode 4.2中开启ARC的功能。所以我使用这个版本。
2.依然采用源代码编译的方式。把SBJson下载后解开的 目录中的classes目录拖拉到 项目中。
3.在项目的h文件中引入#import "SBJson.h"。不再使用#import "JSON.h"
4.测试用的json字符串是: {"userInfo":{"userName":"徐泽宇","sex":"男"}}
5.测试代码是 :
-
- -(void)testJsonParser: (NSString *) jsonString
- {
- jsonString = [[NSString alloc] initWithString:@"{\"userInfo\":{\"userName\":\"徐泽宇\",\"sex\":\"男\"}}"];
- NSLog(@"正在解析json字符串是:%@",jsonString);
-
- SBJsonParser * parser = [[SBJsonParser alloc] init];
- NSError * error = nil;
- NSMutableDictionary *jsonDic = [parser objectWithString:jsonString error:&error];
- NSMutableDictionary * dicUserInfo = [jsonDic objectForKey:@"userInfo"];
-
- NSLog(@"%@",[jsonDic objectForKey:@"userInfo" ]);
- NSLog(@"%@",[dicUserInfo objectForKey:@"userName"]);
- NSLog(@"%@",[dicUserInfo objectForKey:@"sex"]);
- }
控制台打印的内容如下:
2011-11-29 02:56:04.882 IManager[4040:fb03] {
sex = "\U7537";
userName = "\U5f90\U6cfd\U5b87";
}
2011-11-29 02:56:04.887 IManager[4040:fb03] 徐泽宇
2011-11-29 02:56:04.888 IManager[4040:fb03] 男
注意:这里的json的字符串。一定要用双引号,不能使用单引号。这点上和java的类包是有区别的。这个问题浪费了我1个小时。
处理json对象有多个记录的方法。
json字符串是:
{"customer":[{"name":"roamer","ycount":"232.4","sumcount":"322.3"},{"name":"王三","ycount":"221.2","sumcount":"1123.2"},{"name":"李四","ycount":"1221.2","sumcount":"12123.2"}]}
- [customerGridJsonString appendString:@"{\"customer\":[{\"name\":\"roamer\",\"ycount\":\"232.4\",\"sumcount\":\"322.3\"},{\"name\":\"王三\",\"ycount\":\"221.2\",\"sumcount\":\"1123.2\"},{\"name\":\"李四\",\"ycount\":\"1221.2\",\"sumcount\":\"12123.2\"}]}"];
- SBJsonParser * parser = [[SBJsonParser alloc] init];
- NSLog(@"%@",customerGridJsonString);
- NSError * error = nil;
-
- NSMutableDictionary *root = [[NSMutableDictionary alloc] initWithDictionary:[parser objectWithString:customerGridJsonString error:&error]];
-
- NSMutableArray * customers = [root objectForKey:@"customer"];
-
- for(NSMutableDictionary * member in customers)
- {
- NSLog(@"%@",[[member objectForKey:@"name"] description]);
- }
控制台输出是:
2011-12-01 01:59:15.731 IManager[2922:fb03] {"customer":[{"name":"roamer","ycount":"232.4","sumcount":"322.3"},{"name":"王三","ycount":"221.2","sumcount":"1123.2"},{"name":"李四","ycount":"1221.2","sumcount":"12123.2"}]}
2011-12-01 01:59:15.732 IManager[2922:fb03] roamer
2011-12-01 01:59:15.737 IManager[2922:fb03] 王三
2011-12-01 01:59:15.737 IManager[2922:fb03] 李四
分享到:
相关推荐
SBJson 3.1 与之前版本的不同是3.1支持ARC 更加适合Xcode 4.2版本及以上版本 在使用的时候将classes文件夹拖入项目,然后在想要使用SBJson的文件中 #import "SBJson.h"即可
xcode_4.2.1_for_lion 文件大小:1.69G xcode_4.1_for_lion 文件大小:2.96G xcode_3.2.6_and_ios_sdk_4.3__final 文件大小:4.14G 2012年1月上传,亲自测试可以下载。 ================================
xcode 4.2.1 ~~~ 4.5.1 官方下载地址
官方最新xcode4.2.1, sdk for lion 和最新10.7 for lion系统下载
Xcode 4.2.1修改phonegap工程相关设置,因为图片上传不了,改用文档上传。
苹果狮子(BT)+xcode4.2.1(官方)下载地址
IOS 字符串使用汇总 XCode 中 IOS 字符串使用汇总,标题要求长
运行工具类后,重启xcode 在xcode中输入字符串能自动计算字符串长度 并可即时预览字符串效果,
ios xcode10-xcode14各版本sdk,主要包括7 8 9 10 11 12 13 14个版本以及各小版本,博客中有截图。
通过JSON字符串生成对应属性 通过文件写入的方式生成到.m文件 支持输入嵌套模型名称 -0.2 支持Swift 修复JSON的value的值为Null的时候多出来的...
MGFormatter MGFormatter可以使用自定义的关键字颜色和字体在视图中格式化JSON或HTML代码。例子要运行示例项目,请克隆存储库,然后首先从Example目录运行pod install 。要求iOS 8.0以上Xcode 9.0以上用法只需创建一...
##用法在控制台中突出显示JSON字符串,然后使用“ Edit >“ Pretty Print JSON或键盘快捷键Ctrl + J 如果字符串格式正确,它将被附加到控制台底部。 如果发生解析错误,则会打印特定错误。 该插件使用XCode插件...
搜索某个目录下所有文件中的每一行是否包含某个字符串,适用于xcode工程中搜索使用某个api的搜有文件列表
低版本xcode不能编译程序到高版本的手机上,将新版本的xcode里的设备添加进旧版xcode中,重启xcode运行
第一次上传,亲测可行,Xcode9 支持 iOS12.1以上版本,放到对应目录
将十六进制字符串转换为UIColor / NSColor,将JSON字符串转换为类实例,将y / n字符串转换为布尔值,它们的数组和字典; 任何您能理解的! 最新版本需要iOS 8+和Xcode 7.3+ 目录 (带有JSON反序列化示例) 安装 在...
一个关于cocoa 初学者的实例; 如果需要解释,请联系我的邮箱
如何在Xcode 10中使用CreateML来创建用于分类文本的Core ML模型的示例
ios json xml 数据解析,导入xcode即可使用
配置Xcode版本控制SVN详细步骤.内容比较清楚