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

SAX解析与DOM解析对比

时间:2016-04-08 21:28:22      阅读:230      评论:0      收藏:0      [点我收藏+]

标签:

DOM:即Document Object Model,属于文档驱动。解析处理XML文件时,需要读取整个XML文档,存在内存中并建立DOM树,生成DOM树上的每个Node对象。DOM树生成后,可以随意存放或读取文件树的任何部分,并且可以重复读取,没有次数限制。

SAX:即Simple Api for XML,属于事件驱动,不需要读入整个文档,读入文档的过程也是SAX解析的过程,事件驱动是指一种基于回调(callback)机制的程序运行方法。SAX对内存要求比较低,因为它让开发人员自己决定所要处理的标签,尤其是当开大人员需要处理文档中所包含的部分数据时,SAX这种扩展能力得到了更好的体现。

综上:

     DOM优缺点:可以读取以及修改文件树任何部分,但是由于解析之前需要把文档存至内存中并生成文档树(生成文档树比较耗时),所以解析速度较慢以及占用内存较大,适合解析中小型文档。

  SAX优缺点:只能顺序访问读取,不能修改,可以部分读取文档,故解析速度快,适合解析大型文档,但由于需要建立自己额XML对象模型,增加了开发难度。

 

SAX解析与DOM解析对比

标签:

原文地址:http://www.cnblogs.com/crazybuddy/p/5369786.html

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