IOS中JSON数据的解析
IOS中JSON数据解析
官方为我们提供的解析JSON数据的类是NSJSONSerialization,首先我们先来看下这个类的几个方法:
+ (BOOL)isValidJSONObject:(id)obj;
判断一个数据对象是否可以转化为JSON数据
+ (NSData *)dataWithJSONObject:(id)obj options:(NSJSONWritingOptions)opt error:(NSError **)error;
将JSON数据写为NSData数据,其中opt参数的枚举如下,这个参数可以设置,也可以不设置,如果设置,则会输出视觉美观的JSON数据,否则输出紧凑的JSON数据。
1
2
3
|
typedef NS_OPTIONS(NSUInteger, NSJSONWritingOptions) {
NSJSONWritingPrettyPrinted = (1UL << 0)
}
|
+ (id)JSONObjectWithData:(NSData *)data options:(NSJSONReadingOptions)opt error:(NSError **)error;
这个方法是解析中数据的核心方法,data是JSON数据对象,可以设置一个opt参数,具体用法如下:
1
2
3
4
5
6
7
8
|
typedef NS_OPTIONS(NSUInteger, NSJSONReadingOptions) {
//将解析的数组和字典设置为可变对象
NSJSONReadingMutableContainers = (1UL << 0),
//将解析数据的子节点创建为可变字符串对象
NSJSONReadingMutableLeaves = (1UL << 1),
//允许解析对象的最上层不是字典或者数组
NSJSONReadingAllowFragments = (1UL << 2)
}
|
+ (NSInteger)writeJSONObject:(id)obj toStream:(NSOutputStream *)stream options:(NSJSONWritingOptions)opt error:(NSError **)error;
将JSON数据写入到输出流,返回的是写入流的字节数
+ (id)JSONObjectWithStream:(NSInputStream *)stream options:(NSJSONReadingOptions)opt error:(NSError **)error;
从输入流读取JSON数据
IOS中JSON数据的解析相关推荐
- Android中Json数据解析
Android学习系列(20)--App数据格式之解析Json (很基本基础的入门,对json的基础讲的很好) http://my.eoe.cn/874311/archive/1936.html An ...
- js html 处理json数据,JS中Json数据的处理和解析JSON数据的方法详解
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族 ...
- 在php中怎么解析json数据,php解析json数据
在我们使用编程语言的时候,对于数据的格式会出现不能直接使用的情况,所以就会有解析的操作.在php中有专门解析json的函数,那就是json_decode().想要进一步的运用这个函数,我们还需要对它的 ...
- android libbfaac.so,Android中Json数据读取与创建
一: Json的特性和在数据交互中的地位就不用说了,直接看案例. 首先在android studio中创建assets文件目录,用于存放Json数据文件,android studio 1.3 默认项 ...
- iOS 中 XML 数据交换格式
XML 是一种自描述的数据交换格式,但是 XML 的数据交换格式并没有 JSON 来的轻便,但是无可否认的是,XML 的应用范围也是非常广泛的,比如在 ROS(一个开源机器人操作系统)中利用 ...
- swift php json解析,Swift 4.0 | JSON数据的解析和编码
文 / 菲拉兔 自己撸的图 要求: Platform: iOS8.0+ Language: Swift4.0 Editor: Xcode9 [问题补充2017-09-28] 最近我发现了一个问题:在S ...
- Flutter 项目编写 第三方插件库文件引入,本地图片 json数据引入解析
FlutterDemo是如何一步一步搭建起来的 最初就是直接新建flutter项目,就会自动建立一个入门项目.(开始项目前,需先学习Dart语言) flutter项目代码都在lib目录下编写: 新建包 ...
- c语言json映射,GitHub - xujun621/cson: 基于C语言的json数据映射解析库
CSON 基于cJSON,运行于C语言平台的json-struct模型解析工具 简介 CSON是一个简单的cJSON的二次封装,相比于使用原生cJSON一层一层解析的方式,CSON采用模型映射的方式, ...
- android json.out,Android 之 json数据的解析(jsonReader)
json数据的解析相对而言,还是比较容易的,实现的代码也十分简单.这里用的是jsonReade方法来进行json数据解析. 1.在解析之前,大家需要知道什么是json数据. json数据存储的对象是无 ...
最新文章
- Array.asList:数组转list时你一定要知道的“陷阱”!
- 【星辰傀儡线·命运环·卷二 尘埃】 3 誓言
- HTML5 Canvas translate与rotate应用
- django时间与系统时间差8小时
- 讲解sed用法入门帖子
- JavaScript基础:(加号,数值转换,布尔转换)
- Android关于finish()与System.exit()都不能退出应用的原因
- 用chkconfig配置linux自启动服务
- 静态成员变量和非静态成员变量的对比
- 基于Nginx反向代理及负载均衡
- 详解Go语言的计时器
- ABP动态生成WebAPI
- JavaMail实践--实现邮件发送
- XX银行数据中心建设方案
- Rayman的绝顶之路——Leetcode每日一题打卡18
- 2021英一Text4精读、背景和语法分析(网络中立是生是死?难下定论)
- 华为交换机dhcp获取不到_S7706交换机客户端无法通过DHCP获取地址问题
- 每天一道大厂SQL题【Day01】
- Android studio 获取MD5和SHA1
- 词袋模型和词向量模型
热门文章
- python 操作mysql_Python 操作MySQL
- centos 安装jdk_新Jenkins实践-第2章 JENKINS SERVER的安装部署方式
- tcpip网络编程 尹圣雨源码_网络编程——学习笔记
- flash小黄油安卓_99%安卓被这个小破软件给干了?拥有它!Google直呼内行!
- mysql mvcc gap lock_为什么说 MVCC 和 Gap Lock 解决了 MySQL 的幻读问题
- 军用计算机品牌,军用电脑笔记本有何特点 军用电脑笔记本品牌推荐
- java 类加载的机制面试题_java 类加载机制 阿里面试题
- mybatis plus关联查询_Mybatis 和 Hibernate 持久层框架之间的区别是啥?
- 绘制多个折线图_精品图表 | Excel绘制面板折线图
- Spring mvc配置文件