不同类型的解析

时间:2010-12-26 00:35:22

标签: android xml

我已经阅读了ibm关于xml解析的教程

(http://www.ibm.com/developerworks/opensource/library/x-android/)

在这个例子中,有四种类型的xml解析.Dom,Sax,Android Sax和xml_pull。请你告诉我这四种类型之间的区别是什么?当我必须使用每种类型时?

此外,对于本教程中的每种xml解析方式,feed都显示在listView中。为了在btn中出现每个公告,我必须做些什么?

谢谢你的时间!圣诞快乐:D

1 个答案:

答案 0 :(得分:5)

DOM(Document Object Model)解析类似于在Javascript中使用DOM将文档表示为节点树。它使用起来很方便,但也是解析XML文档的最慢方法。

另一方面,SAX是在Android上解析XML文档的最快方法(source)。它涉及指定一个处理程序类,该类实现在解析文档时调用的某些方法。使用它有点麻烦,但我推荐它用于大型文档,或者XML解析被证明是性能瓶颈。

Android提供了一些辅助类来简化SAX的使用。基本上不是定义类,而是可以为您关注的事件注册单独的事件处理程序。它仍在幕后使用SAX解析器。

拉解析器允许您在循环中拉取事件并处理您关心的事件。在我看来,它比SAX解析器更容易使用,但速度稍慢。它对于大多数应用来说应该足够快。