我想知道上述四种类型(SAXPaser、XPath、DOM、XMLPullParse)之间的区别以及我们何时应该使用每种类型。
SAX 解析是比 DOM 最好实现的一种解析,请参见以下两者之间的区别:
DOM
节点采用树结构的形式
内存:它占用更多内存,DOM 仅在小型 XML 文档的情况下首选
运行时速度较慢
存储为对象
易于编程实现
易于导航和使用。
SAX
事件顺序
它不使用任何大型文档首选的内存。
由于上述这一点,运行时速度更快。
对象将被创建。
需要编写创建对象的代码
在 SAX 中,向后导航是不可能的,因为它按顺序处理文档
因此,如果您有非常大的文件,那么您应该使用 SAX 解析器,因为它将触发事件并释放它们,内存中不会存储任何内容,并且使用 SAX 解析器您无法以随机方式访问元素,无法返回! ,但是 Dom 允许您访问 xml 文件的任何部分,因为它将整个文件/文档保存在内存中。
看到这个article http://www.ibm.com/developerworks/opensource/library/x-android/index.html你可以通过阅读获得你想要的Summary.
还要检查这个link http://www.developer.com/ws/android/development-tools/Android-XML-Parser-Performance-3824221-2.htm查看不同 xml 解析器的性能
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)