OC中的JSON解析【简单】
2015-10-22 11:35
441 查看
在io
4000
s编程中,经常需要在网络环境下去解析json数据,我们应该怎样去做呢?
例如,我们要解析的数据的网址为:
"http://123.59.69.203:8080/hdFireFall/phone?op=newsinfo&type=1&pageno=1&size=10。
在我们的工程中,首先就是需要把这个网址字符串转换成NSURL
NSString *urlString=@"NSURL *ul=[NSURL URLWithString:JSONPATH]";
NSURL *url=[NSURL URLWithString:urlString];
由于OC在解析JSON参数时,解析的是data类型的参数,所以需要把NSURL类型的数据转换成NSData类型的,操作如下
NSData *data=[[NSData alloc]initWithContentsOfURL:url];
然后开始解析
id ret=[NSJSONSerialization JSONObjectWithData:data options:0 error:nil];
为什么要用id类型接收呢?因为你并不知道解析完成后到底是什么类型的,这个时候就需要用一个通用类型来进行接收。
然后通过这个网址去看一下json数据中到底放的是什么类型的 http://old.bejson.com/go.html?u=http://old.bejson.com/jsonviewernew/ 例如:得到的json数据是以NSArray存储的,我们就可以吧ret强制转换成NSArray来进行后续的操作。
4000
s编程中,经常需要在网络环境下去解析json数据,我们应该怎样去做呢?
例如,我们要解析的数据的网址为:
"http://123.59.69.203:8080/hdFireFall/phone?op=newsinfo&type=1&pageno=1&size=10。
在我们的工程中,首先就是需要把这个网址字符串转换成NSURL
NSString *urlString=@"NSURL *ul=[NSURL URLWithString:JSONPATH]";
NSURL *url=[NSURL URLWithString:urlString];
由于OC在解析JSON参数时,解析的是data类型的参数,所以需要把NSURL类型的数据转换成NSData类型的,操作如下
NSData *data=[[NSData alloc]initWithContentsOfURL:url];
然后开始解析
id ret=[NSJSONSerialization JSONObjectWithData:data options:0 error:nil];
为什么要用id类型接收呢?因为你并不知道解析完成后到底是什么类型的,这个时候就需要用一个通用类型来进行接收。
然后通过这个网址去看一下json数据中到底放的是什么类型的 http://old.bejson.com/go.html?u=http://old.bejson.com/jsonviewernew/ 例如:得到的json数据是以NSArray存储的,我们就可以吧ret强制转换成NSArray来进行后续的操作。
相关文章推荐
- Extjs之XTemplate简单应用
- Ajax获取SSH框架下JSON对象
- JS+CSS实现的竖向简洁折叠菜单效果代码
- js刷新页面
- jsp文件上传原理
- JSP文件下载(不使用jar包)
- WebApi返回Xml和返回json处理方法
- a标签中调用js的几种方法
- JS实现不使用图片仿Windows右键菜单效果代码
- 验证码的读秒数-js
- JS实现新浪博客左侧的Blog管理菜单效果代码
- JS实现判断滚动条滚到页面底部并执行事件的方法
- js基础 - 兼容代码
- Layer.date 时间插件 JS日期时间插件
- json rpc
- javascript中this实例及理解
- 【JavaScript】利用滚动事件window.onscroll与position:fixed写兼容IE6的回到顶部组件
- JS设置cookie
- jsp-jsp中EL表达式无效
- js中对按键的监听