NSJSONSerialization

 

余书懿

 

在iOS 5发布以后,苹果开始对Json的解析进行支持.

所以至此开始如果你的App只能支持iOS5以上时就考虑别用开源框架了.毕竟用系统的速度才是最快的.

一:将拿到的Json字符串 转换成 Object,使用如下代码

+ (id)JSONObjectWithData:(NSData *)data options:(NSJSONReadingOptions)opt error:(NSError **)error;  

 

三个参数,和一份返回值,现在每个分别介绍其作用和用法:

data :如果你拿到的是服务器返回过来的一个长字符串,那么需要先将NSString 转换成NSData,代码如下:

[@"{\"a\":\"b\"}" dataUsingEncoding:NSUTF8StringEncoding]  

 

官方注释里面提到:UTF-8是最好最快的执行转换方式.
options:

NSJSONReadingMutableContainers: 设置此参加那返回的对象是可以随时添加新的值,也就是 Mutable 类型的对象

NSJSONReadingMutableLeaves: 还不知道

NSJSONReadingAllowFragments:设置此参数那返回对象是不能再去动态修改的, 如:NSArray NSDictionary

error:如果出错,可以打印看看,虽然是英文的

return:返回的对象类型是由需要转换Json决定的,所以可能是 NSArray 也可能是 NSDictionary

posted on   奋进的闹钟  阅读(214)  评论(0编辑  收藏  举报

编辑推荐:
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
阅读排行:
· ThreeJs-16智慧城市项目(重磅以及未来发展ai)
· 软件产品开发中常见的10个问题及处理方法
· Vite CVE-2025-30208 安全漏洞
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(四):结合BotSharp
· MQ 如何保证数据一致性?
点击右上角即可分享
微信分享提示