JSON

JSON – OC 转换对照表

JSON OC
{} NSDictonary
[] NSArray
"" NSString
数字 10,10.5 NSNumber

NSJSONSerialization的常见方法

JSON数据 -> OC对象

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

OC对象 -> JSON数据

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

XML

一个常见的XML文档一般由以下部分组成

文档声明

元素(Element)

属性(Attribute)

一个元素可以拥有多个属性

<video name="Jack 第01部" length="30" />

video元素拥有name和length两个属性

属性值必须用 双引号"" 或者 单引号'' 括住

实际上,属性表示的信息也可以用子元素来表示,比如

<video>

<name>Jack 第01部</name>

<length>30</length>

</video>

注意:

1.XML中的所有空格和换行,都会当做具体内容处理

2.JSON的体积小于XML,所以服务器返回给移动端的数据格式以JSON居多

XML的解析方式有2种

DOM:一次性将整个XML文档加载进内存,比较适合解析小文件

SAX:从根元素开始,按顺序一个元素一个元素往下解析,比较适合解析大文件

XML解析方式的选择建议

大文件:NSXMLParser(苹果原生,SAX方式解析,使用简单)、libxml2(纯C语言,默认包含在iOS SDK中,同时支持DOM和SAX方式解析)

小文件:GDataXML(DOM方式解析,由Google开发,基于libxml2)

NSXMLParser

使用步骤

1 传入XML数据,创建解析器

NSXMLParser *parser = [[NSXMLParser alloc] initWithData:data];

2 设置代理,监听解析过程

parser.delegate = self;

3 开始解析

[parser parse];

NSXMLParser采取的是SAX方式解析,特点是事件驱动,下面情况都会通知代理

当扫描到文档(Document)的开始与结束

当扫描到元素(Element)的开始与结束

GDataXML

GDataXML中常用的类

GDataXMLDocument:代表整个XML文档

GDataXMLElement代表文档中的每个元素

使用attributeForName:方法可以获得属性值

最新文章

  1. #define与typedef在重定义类型中的区别
  2. HTML 学习笔记 CSS3(Animation)
  3. IN和EXISTS的详解
  4. 黑马程序员——for循环的使用与理解
  5. 【转】MYSQL入门学习之十:视图的基本操作
  6. XBox360-双光盘游戏自制GOD
  7. AOJ 0121 Seven Puzzle
  8. 用gooreplacer来加速你的浏览器
  9. uva 688 - Mobile Phone Coverage
  10. phpStorm 2016.1.2 最新版激活方法【亲测可用】
  11. HTML5周记(二)
  12. Treats for the Cows
  13. 【Java】广州三本秋招经历
  14. PHP生成当前月份包括最近12个月内的月份
  15. Senparc.Weixin微信开发(1) 开发验证
  16. WEB服务器与应用服务器的区别
  17. (Python基础)2 or 3?
  18. vue项目如何通过前端实现自动识别并配置服务器环境地址
  19. Linux运维面试题之--网页打开缓慢如何优化
  20. RelativeLayout 总结

热门文章

  1. 在vim编辑器中,删除操作
  2. MAC安装Securecrt破解
  3. GZIP压缩、解压缩工具类
  4. WebForm 分页与组合查询
  5. Python 清理HTML标签类似PHP的strip_tags函数功能(二)
  6. google 技巧
  7. hdu 5901 Count primes 素数计数模板
  8. As input tri-stated
  9. Tiny6410之按键裸机驱动
  10. ring3 hook ZwWriteVirtualMemory