iOS中解析json多种方法
我感觉JSON解析,重要的是JSON解析之后对结果的处理
JSON解析后是个dictionary,但是字典中有可能包含字典和数组,数组中还可以包含字典。
向客户端请求的返回数据解析
下面就简单介绍一下JSON解析过程
其实就一句话
"data就是解析数据"!!!!!!!!!!!!!!
//xcode自带解析类NSJSONSerialization从data中解析出数据放到字典中
NSDictionary *weatherDic = [NSJSONSerialization JSONObjectWithData:Data options:NSJSONReadingMutableLeaves error:&error];
//这个是我们常用的json解析方式,相比于下面的解析方法更加简单也更快捷.
//TouchJSON
//将解析得到的内容存放字典中
NSDictionary *pRootDic = [[CJSONDeserializer deserializer]deserialize:data error:&error];
//这里的解析对象是NSData类型
//SBJSON 
// 获取一个解析器对象 
SBJsonParser *parser = [[[SBJsonParser alloc] init]autorelease];
//获取json串解析后返回的字典
NSDictionary *rootDic = [parser objectWithString:String error:&error];
//需要注意的是要先把解析的数据给解码为NSString类型然后才可以解析
//JSONKit
//获取解析后的字典(完成解析,返回值为字典类型)
NSDictionary *pWeatherDic = [jsonStr objectFromJSONStringWithParseOptions:JKParseOptionLooseUnicode];//统一编码标准
//注意 jsonStr还是把数据先解码为NSString型,之后jsonStr直接用解析方法就行了
//这里附带一个把data转化为NSString类型的方法
NSString *string = [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];
iOS中解析json多种方法的更多相关文章
- ios中解析json对象基类
		
这个是对上面一篇写的一个解析json对象的基类 @interface BaseObjectFromJson : NSObject + (id) objectWithDict:(NSDictionary ...
 - 在ios中解析json数据
		
刚刚下午那会 弄了个 解析 xml demo的小例子,本想着json也挺复杂 弄还是 不弄,但是简单的看了下 发现挺简单 考虑了很久,还是写上来吧,毕竟json用得太多了,而且算是自己的积累吧,毕竟 ...
 - JavaScript中解析JSON --- json.js 、 json2.js 以及 json3.js的使用区别
		
JSON官方(http://www.json.org/)提供了一个json.js,json.js是JSON官方提供的在JavaScript中解析JSON的js包,json.js.json2.js.js ...
 - iOS中解析 XML / JSON
		
JSON数据格式 1. 概述: JSON (JavaScript Object Notation) 是⼀一种轻量级的数据交换格式 基于⽂文本格式,易于⼈人阅读和编写,同时也易于机器解析和⽣生成. 2. ...
 - iOS中产生随机数的方法
		
利用arc4random_uniform()产生随机数 Objective-C 中有个arc4random()函数用来生成随机数且不需要种子,但是这个函数生成的随机数范围比较大,需要用取模的算法对随机 ...
 - hive中解析json数组
		
-- hive中解析json数组 select t1.status ,substr(ss.col,,) as col ,t3.evcId ,t3.evcLicense ,t3.evcAddress , ...
 - ios中NSUserDefaults的使用方法
		
ios中NSUserDefaults的使用方法 NSUserDefaults类提供了一个与默认系统进行交互的编程接口.NSUserDefaults对象是用来保存.恢复应用程序相关的偏好设置,配置数据等 ...
 - Ajax中解析Json的两种方法详解
		
eval(); //此方法不推荐 JSON.parse(); //推荐方法 一.两种方法的区别 我们先初始化一个json格式的对象: var jsonDate = '{ "name&qu ...
 - Android中解析JSON格式数据常见方法合集
		
待解析的JSON格式的文件如下: [{"id":"5", "version":"1.0", "name&quo ...
 
随机推荐
- (Problem 39)Integer right triangles
			
If p is the perimeter of a right angle triangle with integral length sides, {a,b,c}, there are exact ...
 - SVN创建分支
			
工具:TortoiseSVN 创建一个空白项目,例如OA 从客户端检出OA,在OA文件夹下新建三个子文件夹 trunk:存放开发的主线,团队成员在开发的时候一直要用这个库中的内容 branches:存 ...
 - PCB流程-外型加工
 - 教你看懂C++类库函数定义之二---STDMETHOD介绍
			
一切从一个C++ 类库头文件开始,现在在做一个C++的项目,期间用到一个开源的界面库DUILib(类似MFC),这个东西还不错能很容易的写出漂亮的界面,比如QQ的界面,可以去下载下来研究研究,地址:h ...
 - VS2008发布程序
			
下列附有VS2008发布程序介绍:vc2008程序发布指南2008-05-03 17:46vc2008开发的程序的发布方式可以有5种方式: 1. 采用静态链接到crt和MFC. 只要你拥有组成程序的所 ...
 - retina屏实现border边框1px
			
.border { position: relative; width: 300px; height: 200px; } .border:after { border: 1px solid #ff33 ...
 - iOS 10 因苹果健康导致闪退 crash
			
如果在app中调用了苹果健康,iOS10中会出现闪退.控制台报出的原因是: Terminating app due to uncaught exception 'NSInvalidArgumentEx ...
 - bootstrap table笔记
			
获取选中行:$table.bootstrapTable('getSelections');
 - Construct Binary Tree From Inorder and Preorder/Postorder Traversal
			
map<int, int> mapIndex; void mapToIndex(int inorder[], int n) { ; i < n; i++) { mapIndex.in ...
 - Java 网络编程(Elliotte Rusty Harold)
			
最近看了本Java网络编程方面的书,系统化一下Java网络编程,主要内容如下: 1.网络基础篇 这里包括基础的网络概念/ 输入输出流BIO/ Internet地址/URI/URL/HTTP/URLCo ...