码迷,mamicode.com
首页 > 其他好文 > 详细

解析XML文件的几种方式和区别

时间:2015-07-02 22:23:34      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:

DOM:处理大型文件时其性能下降的非常厉害。这个问题是由DOM的树结构所造成的,这种结构占用的内存较多,而且DOM必须在解析文件之前把整个文档装入内存,适合对XML的随机访问。

SAX:不现于DOM,SAX是事件驱动型的XML解析方式。它顺序读取XML文件,不需要一次全部装载整个文件。当遇到像文件开头,文档结束,或者标签开头与标签结束时,它会触发一个事件,用户通过在其回调事件中写入处理代码来处理XML文件,适合对XML的顺序访问。

STAX:Streaming API for XML (StAX)。

 

xml文档有两种定义方法:

dtd:数据类型定义(data type definition),用以描述XML文档的文档结构,是早期的XML文档定义形式。

schema:其本身是基于XML语言编写的,在类型和语法上的限定能力比dtd强,处理也比较方便,因为此正逐渐代替dtd成为新的模式定义语言。

 

本质区别:schema本身是xml的,可以被XML解析器解析(这也是从DTD上发展schema的根本目的)

 

解析XML文件的几种方式和区别

标签:

原文地址:http://www.cnblogs.com/guanwenqiang/p/4617252.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!