background image

iOS 网络交互数据格式解析之 json

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,目前在网络交互过程中
有着举足轻重的地位如果您对

json 还有什么不清楚的话建议去看 json 百度百科。

  在 iOS 平台上,Apple 从 iOS 5.0 才开始提供原生的 json 生成和解析的 API,使用起来 非
常方便,但这样就无法为

iOS 5.0 之前版本的用户服务了。对于 iOS 5.0 以前的系统,json 的

使用得益于无数无私的开源拥护者的贡献。估计大多数开发者现在还不会直接抛弃仍在使用

 

5.0 以前版本的用户,所以这里优先介绍 3 种主要的开源库的使用,然后再介绍新的原生
API 的使用。
  测试数据我们使用国家气象局提供的天气预报接口:
1

http://m.weather.com.cn/data/101010100.html

2

http://www.weather.com.cn/data/cityinfo/101010100.html

3

http://www.weather.com.cn/data/sk/101010100.html

您可以用浏览器打开,看看这三个地址到底是什么

--其实你可以分别看到 3 个字符串,没

错,你才对了,这就是我们测试用的

 json 数据。

  我们打开 github 搜索关键字 json ,程序语言选择 Objective-C ;可以得到 n 页结果。我们
就依次介绍最前面的

3 个:stig/json-framework、TouchCode/TouchJSON、johnezang/JSONKit。

紧接着介绍

 iOS 5.0 开始提供的原生 JSON 处理类。

  此处我们将这三个开源库及原生 JSON 处理类放到一个工程里介绍了,但开源库 stig/json-
framework 编译是需要 ARC 支持的,而 TouchCode/TouchJSON 和 johnezang/JSONKit 是不
需要

 ARC  支持。这样我么在工程中就需要打开  ARC  (可以在创建工程的时候就选中

 

ARC,也可和下图一样在 build setting 中设置两处 为 YES)

然后对后两者在编译规则中做简单的处理,

-fno-objc-arc 即是规定该文件编译时不需要

ARC 支持,如下图:

                   找软件资料,就到一览软件文库

http://wk.yl1001.com/rj/