SAX和DOM有什么区别?

SAX和DOM有什么区别?

我阅读了一些关于XML解析器的文章,并且遇到了SAXDOM

SAX是基于事件的,DOM是树模型 - 我不理解这些概念之间的差异。

根据我的理解,基于事件意味着某种事件发生在节点上。就像当单击特定节点时,它将给出所有子节点,而不是同时加载所有节点。但是在DOM解析的情况下,它将加载所有节点并创建树模型。

我的理解是否正确?

请纠正我如果我错了或以更简单的方式向我解释基于事件和树模型。


翻阅古今
浏览 872回答 3
3回答

江户川乱折腾

只需几句话......SAX(小号 imple 甲用于PI X ML):是基于数据流的处理器。你随时只在内存中占有很小的一部分,你可以通过实现类似事件的回调代码来“嗅探”XML流tagStarted()。它几乎不使用内存,但你不能做“DOM”的东西,比如使用xpath或traverse树木。DOM(d ocument Ø bject 中号奥德尔):你加载整个事情到内存-这是一个巨大的内存消耗。你甚至可以用中等大小的文件来记忆。但是你可以使用xpath并遍历树等。
打开App,查看更多内容
随时随地看视频慕课网APP