解析(json、xml)

来源:互联网 发布:淘宝店铺logo尺寸 编辑:程序博客网 时间:2024/06/04 19:14
1、SAX解析
  SAX(simple API for XML),一种基于事件驱动模型的XML解析标准接口。
  工作原理:

  SAX简单地说就是对XML文档进行顺序扫描,当扫描到文档的开始与结束 , 元素(element)的开始与结束时,就会触发相应的事件处理 函数,由事件处理函数做相应的动作,处理完后继续扫描,直到文档结束,则解析完毕。

总结:使用SAX来解析XML文件,实际上是一个边读边解析的过程,当文件读取完毕后,也就解析完毕。而其中ContentHandler是最主要的解析监听接口,它以标签为基本单位,在解析时候触发相应方法,在方法中会传入相应的参数,以对不同的标签进行不同的操作。


2、DOM解析

  DOM(Document Object Model),是一种基于文档对象模型的解析XML标准接口。
  工作原理:
  DOM解析XML文件时,会将XML文件的所有内容读取到内存中,然后允许你使用DOM API 操作XML 树。也就是说,DOM 会把XML以树的形式读取到内存中,然后在通过相应的API 来操作这个XML树,从而达到解析XML文件的目的。
 一般不建议在手机上采用DOM来解析XML,因为这样会占用比较多的内存

ps:DOM是由w3c定义的一个解析XML的标准,一些第三方类库在此基础上扩展并优化了解析的过程,其中dom4j和jdom都是比较优秀的第三方类库。


3、JSON解析(JavaScript Object Natation),JSON数据是一系列键值对的集合,在网络传输中被广泛应用。

总结:JSON其实就是满足特定规则的一种数据形式,它提供了一个方便快捷的数据交换途径,在与JavaScript的交互中有良好的表现,因为JavaScript可直接识别出JSON而不需要在做其他的出来,这点相对于XML还是比较方便的。但对一些拥有复杂结构的数据,使用JSON就不是那么适合。

0 0