1.XML解析(1)DOM解析一般使用系统自带的类NSXMLParser和谷歌提供的GDataXMLNode的开源解析工具,其中谷歌的解析速度更快,更常使用。原理:一层一层的去找1.通过GDataXMLDocument获取文档2.通过①初始化的对象的属性rootElement获得根节点GDataXMLElement的对象(也就是XML文件下的第一个节点)3.如果还没有获得我们需要的数据可利用Element对象的属性children继续一层层往下找,知道找到最底层数据为止。(2)SAX解析sax解析是一种代理解析模式,需遵循NSXMLParser通过实现代理方法来完成解析大致分为五个方法1.parserDidStartDocument 开始解析2.parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary*)attributeDict开始读取标签
3.parser:(NSXMLParser *)parser foundCharacters:(NSString *)string读取标签中的值
4.parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName结束读取标签
5.parserDidEndDocument:(NSXMLParser *)parser结束解析
我们通常把解析放在第四步中完成。
* 1.SAX解析
* 优点:1.逐行解析,如果后面的数据写错了,前面的可以解析出来
2.内存消耗小
缺点:1.代码多,不容易理解,对程序员要求比较高
* 2.DOM解析
优点:1.思路明确,代码简单,对程序员要求不高
2.第三方类使用起来困难度减少
缺点:1.一次性解析完毕,对内存消耗大
2.如果其中有一个错误,全部解析出错
SAX解析一般用在解析大的数据
DOM解析一般用在解析小的数据
2.JSON解析
json解析也是一种使用频率特别高的解析方式。
JOSN解析类型一般是数组和字典类型,用来接收数据的容器一般根据返回值类型决定,返回值为数组类型,则用数组接收,反之用字典接收。
固定格式[NSJSONSeriaization JSONObjectWithData]
以上就是我所整理的数据解析笔记,主要介绍这两种常用的解析方式,都比较简单,比较浅显,希望对初学者有一定的帮助。