我已经阅读了ibm关于xml解析的教程
(http://www.ibm.com/developerworks/opensource/library/x-android/)
在这个例子中,有四种类型的xml解析.Dom,Sax,Android Sax和xml_pull。请你告诉我这四种类型之间的区别是什么?当我必须使用每种类型时?
此外,对于本教程中的每种xml解析方式,feed都显示在listView中。为了在btn中出现每个公告,我必须做些什么?
谢谢你的时间!圣诞快乐:D答案 0 :(得分:5)
DOM(Document Object Model)解析类似于在Javascript中使用DOM将文档表示为节点树。它使用起来很方便,但也是解析XML文档的最慢方法。
另一方面,SAX是在Android上解析XML文档的最快方法(source)。它涉及指定一个处理程序类,该类实现在解析文档时调用的某些方法。使用它有点麻烦,但我推荐它用于大型文档,或者XML解析被证明是性能瓶颈。Android提供了一些辅助类来简化SAX的使用。基本上不是定义类,而是可以为您关注的事件注册单独的事件处理程序。它仍在幕后使用SAX解析器。
拉解析器允许您在循环中拉取事件并处理您关心的事件。在我看来,它比SAX解析器更容易使用,但速度稍慢。它对于大多数应用来说应该足够快。