Android:解析XML数据的最佳解析器

Man*_*gde 6 android saxparser xmlpullparser android-parser android-xml

我正在开发一个应用程序,其中第一次我要解析来自远程服务器的xml文件中的数据.

但我无法选择哪种解析器有效或最适合解析.由于主要有三种类型的解析,我知道:

  1. SAX
  2. XMLPullParsing
  3. DOM

哪个是解析数据的最佳解析器?当我在Google上搜索并发现上述解析器的正反两面时.但我无法确定哪种效率最高.

XML具有大量标签的大量数据.

请指导我并建议我应该使用哪个解析器,因为我在我的应用程序中第一次使用解析.

Pra*_*kar 18

SAX解析是比DOM更好的实现.请参阅以下两者之间的区别:

DOM:

  • 节点采用树形结构.
  • 内存:它占用更多内存,DOM仅在小型XML文档的情况下提供.
  • 在运行时更慢.
  • 存储为对象.
  • 以编程方式易于实施.
  • 易于导航和使用.

SAX:

  • 事件顺序.
  • 它不使用任何大文档首选的内存.
  • 由于上述要点,在运行时更快.
  • 要创建对象.
  • 需要编写用于创建对象的代码.
  • 在SAX中,向后导航是不可能的,因为它顺序处理文档.

  • +1.这是一个很好的比较.我要强调的是,SAX更难实现,因为程序员必须逐步执行节点.但是,它更快,使用更少的内存,并且更适合大型XML数据集或流式XML数据. (2认同)

Sre*_*v R 9

在所有的XML解析器中,Sax解析器是最快的解析器,所以你可以毫无疑问地使用它.如果你需要从XML读取和写入数据,你可以使用DOM.使用SAX解析器,您将只能从XML读取数据.由于这两个位于列表的顶部,因此您无需考虑XMLPullparser.