XML--DOM解析和SAX解析的特点_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > XML--DOM解析和SAX解析的特点

XML--DOM解析和SAX解析的特点

 2014/10/10 19:10:34  麦穗的穗  程序员俱乐部  我要评论(0)
  • 摘要:[align=left]XML--DOM解析和SAX解析的特点和差别[/align]1、DOM解析–文档对象模型解析.是W3C指定的一套规范标准,它不是专门为Java或其他语言而制定的核心是按树形结构处理数据,要先将所有文件读取到内存中形成DOM树,DOM解析器读入xml文件并在内存中建立一个结构一模一样的“树”,这树的节点和xml各标记对应,通过操纵此“树”来处理xml中的文件。优点:1.DOM同时支持读和写2.可以对树进行遍历,可直接访问节点,访问效率高3.可以随时访问树中的节点
  • 标签:特点 XML 解析
[align=left]XML--DOM解析和SAX解析的特点和差别[/align]1、 DOM解析 – 文档对象模型解析
.是W3C指定的一套规范标准,它不是专门为Java或其他语言而制定的
核心是按树形结构处理数据,要先将所有文件读取到内存中形成DOM树,DOM解析器读入xml文件并在内存中建立一个结构一模一样的“树”,这树的节点和xml各标记对应,通过操纵此“树”来处理xml中的文件。
优点:
1.DOM同时支持读和写
2.可以对树进行遍历,可直接访问节点,访问效率高
3.可以随时访问树中的节点,并能进行增删查改

缺点:
xml文件很大时,建立的“树”也会大,所以会大量占用内存。
解析速度慢,只适合解析小型文档(要在内存中生成节点树,而生成树是比较费时的)
耗费系统的内存资源


2、SAX解析
核心是事件处理机制,解析器根本不创建任何对象,它只是将事件传递给您的应用程序
一次性的处理方式
优点:
1.边读边解析,以流的方式读XML,应用于大型XML文档
2.解析速度快
3. 不必解析整个文档;它可以在某个条件得到满足时停止解析。

缺点:
只支持读,不能修改,
只能顺序解析,
访问效率低


区别:
1、DOM是基于内存的,不管文件有多大,都会将文件的内容事先装载到内存中,因     而需要占很大的内存空间。
SAX基于事件,当事件被触发时,从头开始解析文件,无需事先装载,当获得需要的数据,即可停止,所以占用内存空间很少
2. DOM 可以读取XML,也可以向XML文档中插入数据
SAX 只能对XML 进行读取,不能插入数据(sax的缺点)
3. DOM 可以访问指定的元素进行随机访问
SAX 只能从头开始执行,顺序解析,只进行一次。

发表评论
用户名: 匿名