嘿,任何人都可以告诉我,“Dom解析器”和“Xerces解析器”有什么区别。两者的优点和缺点是什么?Dom解析器和Xerces解析器之间的差异
2
A
回答
7
Xerces 是一个DOM解析器。这是Java或C++中的Apache实现。
你想要考虑的两个是SAX和DOM。 DOM在内存中创建一个对象树; SAX没有。在DOM完成解析之后,您可以操作对象树; SAX使用事件模型来即时处理XML。
SAX或DOM将“工作”。您的选择通常取决于您是否将其保存在内存中以便操作或处理它。如果XML流为千兆字节,则可能无法一次全部存储。在这种情况下,SAX是一个不错的选择,因为您可以在解析时随时使用它。
谷歌是你的朋友:开始了解DOM4J和JDOM。
如果您正在编写Java,我会推荐JDOM。它需要处理很多样板文件。
3
有两种方法可以解析Xerces.viz SAX & DOM中的xml文件。 SAX解析器:
- 基于事件的模型。
- 串行访问(事件流)。
- 内存使用率低(仅生成事件)。
- 处理文档的部分内容(捕获相关事件)。
- 仅处理文档一次。
- 向后导航不可能,因为它会按顺序处理文档。
- 对象将被创建。
DOM解析器:
- (基于对象的)树数据结构。
- 随机存取(内存数据结构)。
- 高内存使用率(文档被加载到内存中)。
- 编辑文档(处理内存数据结构)。
- 多次处理(文档在内存中加载)。
- 轻松导航。
- 存储为对象。
相关问题
- 1. Xerces jar是一个DOM解析器或SAX解析器
- 2. Xerces DOM解析器非常慢?
- 3. Stax和DOM解析之间的性能差异
- 4. SAX XML解析器或DOM解析器?
- 5. 使用DOM分析器解析和编辑HTML解析器
- 6. HTML DOM解析器
- 7. 使用DOM解析器和SAX解析器进行Android XML解析的区别
- 8. 使用DOM解析器解析
- 9. dom解析器中的java.lang.StackOverflowError
- 10. Android中的DOM解析器
- 11. 内置浏览器DOM解析器VS. Javascript框架解析器
- 12. 解析服务器与流星 - 差异?
- 13. 使用Xerces DOM解析器验证多个xml架构
- 14. 异常解析使用Xerces的
- 15. DOM解析器 - CDATA查询
- 16. DOM解析器动态ID
- 17. C++ dom解析器问题
- 18. android dom解析器问题
- 19. PHP HTML DOM解析器
- 20. PHP DOM解析器的HTML和CSS
- 21. 如何使用JxPath和DOM解析器解析XML文件
- 22. 术语之间的任何差异解析树和派生树?
- 23. “正常化”和“解析”回调之间的差异
- 24. libxml2是DOM解析器还是串行解析器?
- 25. Expat解析器与Dom解析器在PHP
- 26. VTD解析器性能VS DOM解析器
- 27. 关于解析器DOM和REGEX
- 28. xerces解析中的ArrayIndexOutOfBoundsException
- 29. DOM解析器:如何处理这我传递给DOM解析器特殊charecters
- 30. 解析时间差异并除以mysql
另外添加丸解析器例如dom4j和jdom – Mark 2010-06-30 11:16:54
嘿,你能给我一些有用的链接。 – Manu 2010-06-30 11:18:13
以及哪个解析器最适合使用。 – Manu 2010-06-30 11:19:21