NSJSONSerialization类的使用

使用NSJSONSerialization解析本地JSON数据文件 在本文中,我们将学习如何使用NSJSONSerialization来解析本地的JSON数据文件。通过NSJSONSerialization,我们可以方便地解析本地的JSON数据文件,并提取其中的内容。在上述代码中,我们提取了姓名(name)、年龄(age)、邮箱(email)、地址(address)和兴趣爱好(interests)等数据,并将其打印输出。需要注意的是,上述代码是在iOS应用程序的主Bundle中查找data.json文件。首先,我们需要准备一个包含JSON数据的本地文件。 阅读详情
(1)概述
          iOS实现json解析的第三方库也是挺多的,但原生的NSJSONSerialization类既使用方便而性能又是比较好的,所以推荐在iOS端上实现json的解析与转换还是使用NSJSONSerialization比较好。

(2)实现json的解析
          NSJSONSerialization类的+ (id)JSONObjectWithData:(NSData *)data options:(NSJSONReadingOptions)opt error:(NSError **)error;静态方法能实现json解析
     有时,json数据中还会包含json数据,这种情况还需要将解析出来的数据再进行一次json解析。    
 
     其中NSJSONReadingOptions的枚举结构为:
     typedef NS_OPTIONS(NSUInteger, NSJSONReadingOptions) {
                        NSJSONReadingMutableContainers = (1UL << 0),
                        NSJSONReadingMutableLeaves = (1UL << 1),
                        NSJSONReadingAllowFragments = (1UL << 2)
                        } NS_ENUM_AVAILABLE(10_7, 5_0);

     NSJSONReadingMutableContainers:Specifies that arrays and dictionaries are created as mutable objects.    
          //返回NSArray与NSDictionary的可变容器
    
     NSJSONReadingMutableLeaves:Specifies that leaf strings in the JSON object graph are created as instances of NSMutableString.
          //json中的字符串对象均返回可变对象。

     NSJSONReadingAllowFragments:Specifies that the parser should allow top-level objects that are not an instance of NSArray or NSDictionary.
          //允许最外层对象非NSArray或NSDictionary

(3)实现json的生成
          + (NSData *)dataWithJSONObject:(id)obj options:(NSJSONWritingOptions)opt error:(NSError **)error; 通过该方法可以实现将对象转成json数据。        
iOS NSJSONSerialization 解析 ios5中apple增加了解析JSON的api——NSJSONSerialization。网上已经有人做过测试,NSJSONSerialization在效率上完胜SBJSON、TouchJSON、YAJL、JSONKit、NextiveJson。详情见这里。既然apple为我们提供了这么良好的工具,我们没理由不用吧。NSJSONSerialization提供了将JSON数据转换为Foundation对象(一般都是NSDictionary和NSArray)和Foundation对象转换为JSON数据(可以通过调用isValidJSONObject来判断Foundation对象是否可以转换为JSON数据)。 立即下载

相关推荐

保姆级教程:用WorkVisual 6.0给你的KUKA机器人硬件做一次‘全身体检’与配置检查

本文详细介绍了如何使用WorkVisual 6.0对KUKA机器人进行全面的硬件诊断与配置检查。从环境准备到核心硬件模块检查,再到安全系统合规性验证,提供了保姆级教程,帮助技术团队快速掌握数字化诊断方案,提升工业机器人的健康管理效率。

weixin_27298377的博客 277

iOS之苹果自带的json解析NSJSONSerialization(序列化)

NSJSONSerialization介绍:NSJSONSerialization提供了将JSON数据转换为Foundation对象(一般都是NSDictionary和NSArray)和Foundation对象转换为JSON数据(可以通过调用isValidJSONObject来判断Foundation对象是否可以转换为JSON数据)转换成JSON的对象必须具有如下属性:1.顶层对象必须是NSArr...

代码解释生活 2万+

钣金件设计规范

为保证折弯 强度,钣金折弯钣金应大于材料的最小折弯半径。在设计U型弯曲件时,两弯曲边最好长度相等,以免弯曲时产品偏 移而产生废品,如果因为结构设计不允许两边一样长,为保证产品在模 具中准确定位,应预先在设计时添加工艺定位孔,特别是多次折弯成 形的零件,必须设计工艺孔为定位基准,以减少累计误差,保证产品 质量,如图2-11所示。凸包是依靠材料的延伸使钣金件形成局部凹陷或凸起的冲压工序凸包与拉深是完全不同的冲压工艺,凸包中材料厚度的改变为费意图性 的,即厚度的少量改变是变形过程中形成的,不是设计指定的要求。

制冷技术咨询与服务的博客 7326

NSJSONSerialization

NSJSONSerialization介绍   ios5中apple增加了解析JSON的api——NSJSONSerialization。网上已经有人做过测试,NSJSONSerialization在效率上完胜SBJSON、TouchJSON、YAJL、JSONKit、NextiveJson。既然apple为我们提供了这么良好的工具,我们没理由不用吧。   NSJSONSeri

ANDY_GUO_wei的专栏 733

PaddleOCR 与 PaddleX 调试

本文介绍了PaddleOCR与PaddleX的安装调试过程及应用对比。首先详细说明了环境准备步骤,包括安装ccache、设置环境变量及创建conda虚拟环境,提供了精简安装和源码安装两种方式。接着展示了使用PaddleOCR进行发票和手写汉字识别的测试结果,指出部分手写识别存在误差。随后对比了两者的差异:PaddleOCR专注于OCR算法优化,PaddleX则提供全流程工具链和标准化部署方案。最后演示了如何通过PaddleX部署OCR服务,包括API启动方法和客户端调用示例,为开发者提供了两种不同场景下的O

weixin_42176639的博客 1452

frp内网穿透(socks隧道)

在实验过程中还是遇到了挺多的问题,但好在大多都解决了。不过还是遗留了一些不懂的问题,等以后再慢慢研究了。最后,以上仅为个人的拙见,如何有不对的地方,欢迎各位师傅指正与补充,有兴趣的师傅可以一起交流学习。

2301_76227305的博客 1万+

NSJSONSerialization详解

可以使用NSJSONSerialization来解析JSON对象。 一个对象想要被转换成JSON的对象必须具有以下特点: 1.顶层对象是NSArray或者NSDictionary; 2.其中的对象实例NSString, NSNumber, NSArray, NSDictionary, 或者 NSNull; 3.所有字典的键都需要是NSArray类型的; 4.数字不是NaN或者无穷大。

逢个场,作个戏 1896

从M350 RTK到E-Port:解锁大疆无人机多负载协同与PSDK V3开发新范式

本文深入解析了大疆M350 RTK无人机搭载的E-Port智能接口与全新的PSDK V3开发套件,如何共同实现多负载协同作业的范式转变。E-Port集成了供电与高速数据总线,而PSDK V3通过统一的设备模型与服务机制,大幅降低了第三方负载的开发门槛与集成复杂度,使构建如智能巡检等复杂空中作业系统变得更加高效和标准化。

3c4x5z6v7b的博客 166

iOS5自带解析类NSJSONSerialization解析json

作为一种轻量级的数据交换格式,json正在逐步取代xml,成为网络数据的通用格式。(http://www.bejson.com/可以对json数据进行格式化)从iOS5开始,APPLE提供了对json的原生支持(NSJSONSerialization)。 一、用NSJSONSerialization解析json要求 我们能利用 NSJSONSerialization将JSON转换成Foun

宁静致远 1542

Open3D——平面点云凸多边形轮廓提取【2025最新版】

平面点云凸多边形轮廓提起,博客长期更新,本文最近更新时间为:2025年1月6日。

点云侠的博客 6753

智能手表竞品分析与市场调研报告

本报告旨在通过调研当前主流智能手表产品的功能特点、市场表现、用户反馈、定价策略等方面,辅助我司即将立项的Aurora Watch S1产品在功能定义、目标用户、定价区间、差异化竞争等方面做出科学决策。 调研范围包括国内外中端价位主流品牌(¥199~¥999),重点关注小米、华为、荣耀、Amazfit、Redmi、Haylou 等品牌的热销型号。

hoony123的博客 7万+

iOS 原生解析Json类NSJsonSerialization

关于NSJSONSerialization,官方文档中有如下介绍: You use the NSJSONSerialization class to convert JSON to Foundation objects and convert Foundation objects to JSON. An object that may be converted to JSON

让创意的火花散落到屏幕的每一个dp 3807

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

关于JSON数据和苹果的JSON数据解析类NSJSONSerialization

什么是JSON数据: JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。 简单JSON数据:可以用下面这样的 JSON 表示 "名称 / 值对" :{ "firstName": "Brett" } 复杂一点

u012905679的专栏 1385

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

iOS 使用NSJSONSerialization类进行json解析

  JSON数据结构基本概念JavaScript Object Notation ,轻量级的数据交换格式,采用完全独立于语言的文本格式,被称为理想的数据交换语言,易于人阅读和便携,同时也易于及其解析何程,由于JSON解析便捷、快速,并且相同数据用JSON编辑所占的内存更小,所以在iOS中我们我们使用JSON解析更加普遍。   JSON文档有两种结构:对象 、数据 对象:以“{“开始,以”}”结束,...

ihoudf 8192

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Swift中NSJSONSerialization类抛出异常的处理写法

Swift虽然和OC在实现功能上用到的几乎是的类的属性和方法,但是在写法上就存在着巨大的区别,其中就有抛出异常的处理写法上,下面就是它的正确写法(1)Swift写法 // 抛出异常 do { let dic:NSDictionary = try NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOption

0.0000000000 752

NSJSONSerialization类抛出异常处理(swift)

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34357962的博客 250

c语言json中的枚举,NSJSONSerialization类中的枚举值说明

NSJSONReadingOptions:NSJSONReadingMutableContainers:返回可变容器,NSMutableDictionary或NSMutableArray。NSJSONReadingMutableLeaves:返回的JSON对象中字符串的值为NSMutableString。但是此枚举值目前在iOS 7上测试不好用,应该是个bug,参见:NSJSONReadingMu...

weixin_29724477的博客 363

54.NSJSONSerialization类进行json解析(字符串“UTF-8解码”)

NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingAllowFragments error:nil] ; 方法:解析并转码 - (NSString*)dataToJsonString:(id)object { NSStr...

weixin_30568591的博客 320

JSON解析之NSJSONSerialization

JSON解析之NSJSONSerialization -(void)touchesBegan:(NSSetUITouch *> *)touches withEvent:(UIEvent *)event {     //获取url路径     NSURL *url = [NSURL URLWithString:@"http://localhost/demo.json"];

weixin_37664648的博客 488

iOS之NSJSONSerialization对json解析

iOS之NSJSONSerialization对json解析

IT李菜鸟的博客 852

iOS --- 使用NSJSONSerialization来解析JSON格式的数据

iOS中对JSON格式的解析通常可以采用NSJSONSerialization来实现. 另外,也可以使用另一个非常方便强大的JSON类库SwiftyJSON.

icetime17的专栏 1615

NSJSONSerialization的使用

在iOS  5 中,苹果引入了一个解析JSON串的NSJSONSerialization类。 通过该类,我们可以完成JSON数据与NSDictionary和NSArray之间的转化。 以前大多用第三方的插件类似JSONKit或是SBJson等等,苹果自带的json解释工具NSJSONSerialization的效率大大超过了其它的解释工具,在稳定性方面也有保障. 一、将NSDic

SergioWoo的专栏 1350

关于NSJSONSerialization

关于NSJSONSerialization,官方文档中有如下介绍: You use the NSJSONSerialization class to convert JSON to Foundation objects and convert Foundation objects to JSON.   An object that may be converted to JSON must

巅峰寂寞. 781

OC 利用NSJSONSerialization将json串转换成NSObject或NSArray对象

//将要转换的类 #import  @interface MyJsonModel : NSObject @property (nonatomic,strong) NSString *token; @end #import "MyJsonModel.h" @implementation MyJsonModel @end

SkyBoy的博客 2490
上一篇: iOS 单例模式
下一篇: MVC模型优化方案
luozhiwei_iOS
博客等级 码龄12年 4粉丝 32原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值