我正在开发一个应用程序,第一次我要从来自远程服务器的xml文件解析数据。Android:解析XML数据的最佳解析器
但我无法选择哪个解析器是有效的或最适合解析。由于主要有三种类型解析的,我知道:
- SAX
- XMLPullParsing
- DOM
这是解析数据的最佳解析器?当我在Google上搜索时发现上述解析器的正面和负面两面。但我无法确定哪一种效率最高。
XML有大量数据和大量标签。
请指导我,并建议我应该使用哪个解析器,因为我在第一次在我的应用程序中使用解析。
我正在开发一个应用程序,第一次我要从来自远程服务器的xml文件解析数据。Android:解析XML数据的最佳解析器
但我无法选择哪个解析器是有效的或最适合解析。由于主要有三种类型解析的,我知道:
这是解析数据的最佳解析器?当我在Google上搜索时发现上述解析器的正面和负面两面。但我无法确定哪一种效率最高。
XML有大量数据和大量标签。
请指导我,并建议我应该使用哪个解析器,因为我在第一次在我的应用程序中使用解析。
在所有的XML解析器中,Sax解析器是最快速的解析器,所以您可以毫无疑问地使用它....如果您需要从XML读取和写入数据,则可以使用DOM。使用SAX解析器,您将只能读取XML中的数据。由于这两个位于列表的顶部,因此您不需要考虑XMLPullparser。
抱歉,但SAX解析器有自我关闭标记问题
SAX解析是比DOM更好的实现。看到这两者之间的区别如下所示:
DOM:
SAX:
+1。这是一个很好的比较。我会强调SAX更难实现,因为程序员必须通过节点。但是,速度更快,使用更少的内存,并且更适合于大型XML数据集或流式XML数据。 – 2013-03-25 06:41:17
恰到好处的朋友。 :) – 2013-03-25 08:52:20
我会说XMLPullParsing,但我最近听到很棒的东西,关于Xerces可能也想看看那个。但是,从来没有使用Xerces和XMLPullParser从来没有让我失望。我们建立了一个使用它的色盲应用程序,它可以拉动成千上万的颜色组合,以告诉你刚才拍摄的照片是什么颜色。
更新:继承人几个链接,如果你不介意把读出:对,显示利弊和津贴双方
http://www.firstobject.com/xml-reader-sax-vs-xml-pull-parser.htm
而且另一个答案也许可以阅读到SAX parser vs XMLPull parser
我认为XMLPullParser会是一个不错的选择,因为他们在Android documentation中提到过。
使用sax或xmlpullparsing。 – Raghunandan 2013-03-25 06:08:26
如果文件大小合理,请尝试一下。如果它不适合核心,请使用sax。向我们展示您的模式并告诉我们您使用数据处理的是什么样的东西 – 2013-03-25 06:12:20
意味着萨克斯如果好,那么对于大量数据而言,但请告诉我关于xmlpullparser的信息。萨克斯和xmlpull中最好的。 – 2013-03-25 06:14:52