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数据的解析相关推荐

  1. Android中Json数据解析

    Android学习系列(20)--App数据格式之解析Json (很基本基础的入门,对json的基础讲的很好) http://my.eoe.cn/874311/archive/1936.html An ...

  2. js html 处理json数据,JS中Json数据的处理和解析JSON数据的方法详解

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族 ...

  3. 在php中怎么解析json数据,php解析json数据

    在我们使用编程语言的时候,对于数据的格式会出现不能直接使用的情况,所以就会有解析的操作.在php中有专门解析json的函数,那就是json_decode().想要进一步的运用这个函数,我们还需要对它的 ...

  4. android libbfaac.so,Android中Json数据读取与创建

    一:  Json的特性和在数据交互中的地位就不用说了,直接看案例. 首先在android studio中创建assets文件目录,用于存放Json数据文件,android studio 1.3 默认项 ...

  5. iOS 中 XML 数据交换格式

         XML 是一种自描述的数据交换格式,但是 XML 的数据交换格式并没有 JSON 来的轻便,但是无可否认的是,XML 的应用范围也是非常广泛的,比如在 ROS(一个开源机器人操作系统)中利用 ...

  6. swift php json解析,Swift 4.0 | JSON数据的解析和编码

    文 / 菲拉兔 自己撸的图 要求: Platform: iOS8.0+ Language: Swift4.0 Editor: Xcode9 [问题补充2017-09-28] 最近我发现了一个问题:在S ...

  7. Flutter 项目编写 第三方插件库文件引入,本地图片 json数据引入解析

    FlutterDemo是如何一步一步搭建起来的 最初就是直接新建flutter项目,就会自动建立一个入门项目.(开始项目前,需先学习Dart语言) flutter项目代码都在lib目录下编写: 新建包 ...

  8. c语言json映射,GitHub - xujun621/cson: 基于C语言的json数据映射解析库

    CSON 基于cJSON,运行于C语言平台的json-struct模型解析工具 简介 CSON是一个简单的cJSON的二次封装,相比于使用原生cJSON一层一层解析的方式,CSON采用模型映射的方式, ...

  9. android json.out,Android 之 json数据的解析(jsonReader)

    json数据的解析相对而言,还是比较容易的,实现的代码也十分简单.这里用的是jsonReade方法来进行json数据解析. 1.在解析之前,大家需要知道什么是json数据. json数据存储的对象是无 ...

最新文章

  1. Array.asList:数组转list时你一定要知道的“陷阱”!
  2. 【星辰傀儡线·命运环·卷二 尘埃】 3 誓言
  3. HTML5 Canvas translate与rotate应用
  4. django时间与系统时间差8小时
  5. 讲解sed用法入门帖子
  6. JavaScript基础:(加号,数值转换,布尔转换)
  7. Android关于finish()与System.exit()都不能退出应用的原因
  8. 用chkconfig配置linux自启动服务
  9. 静态成员变量和非静态成员变量的对比
  10. 基于Nginx反向代理及负载均衡
  11. 详解Go语言的计时器
  12. ABP动态生成WebAPI
  13. JavaMail实践--实现邮件发送
  14. XX银行数据中心建设方案
  15. Rayman的绝顶之路——Leetcode每日一题打卡18
  16. 2021英一Text4精读、背景和语法分析(网络中立是生是死?难下定论)
  17. 华为交换机dhcp获取不到_S7706交换机客户端无法通过DHCP获取地址问题
  18. 每天一道大厂SQL题【Day01】
  19. Android studio 获取MD5和SHA1
  20. 词袋模型和词向量模型

热门文章

  1. python 操作mysql_Python 操作MySQL
  2. centos 安装jdk_新Jenkins实践-第2章 JENKINS SERVER的安装部署方式
  3. tcpip网络编程 尹圣雨源码_网络编程——学习笔记
  4. flash小黄油安卓_99%安卓被这个小破软件给干了?拥有它!Google直呼内行!
  5. mysql mvcc gap lock_为什么说 MVCC 和 Gap Lock 解决了 MySQL 的幻读问题
  6. 军用计算机品牌,军用电脑笔记本有何特点 军用电脑笔记本品牌推荐
  7. java 类加载的机制面试题_java 类加载机制 阿里面试题
  8. mybatis plus关联查询_Mybatis 和 Hibernate 持久层框架之间的区别是啥?
  9. 绘制多个折线图_精品图表 | Excel绘制面板折线图
  10. Spring mvc配置文件