天天看点

iOS开发网络篇—JSON介绍

一、什么是JSON

JSON是一种轻量级的数据格式,一般用于数据交互

服务器返回给客户端的数据,一般都是JSON格式或者XML格式(文件下载除外)

JSON的格式很像OC中的字典和数组

{"name" : "jack", "age" : 10}

{"names" : ["jack", "rose", "jim"]}

标准JSON格式的注意点:key必须用双引号

要想从JSON中挖掘出具体数据,得对JSON进行解析。即把JSON 转换为 OC数据类型

二、JSON – OC 转换对照表

iOS开发网络篇—JSON介绍

对照关系

iOS开发网络篇—JSON介绍

三、JSON解析方案

1.在iOS中,JSON的常见解析方案有4种

(1)第三方框架:JSONKit、SBJson、TouchJSON(性能从左到右,越差) 

(2)苹果原生(自带):NSJSONSerialization(性能最好)

2.NSJSONSerialization的常见方法

(1)JSON数据 ——》 OC对象

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

(2)OC对象 ——》 JSON数据 

+ (NSData *)dataWithJSONObject:(id)obj options:(NSJSONWritingOptions)opt error:(NSError **)error;

3.解析来自服务器的JSON示意图

iOS开发网络篇—JSON介绍

四、部分代码示例

<a target="_blank"></a>