【问题标题】:Android XML parser for simple xml node strings用于简单 xml 节点字符串的 Android XML 解析器
【发布时间】:2011-03-23 22:08:45
【问题描述】:

当它们从持久套接字连接到达时,我需要解析一系列简单的 XML 节点(字符串格式)。自定义 Android SAX 解析器真的是最好的方法吗?在this way

我天真地希望我可以将字符串转换为 XML,然后使用点语法或类似的语法来引用名称/属性。

【问题讨论】:

  • 所以格式很简单,但是数据多吗(系列有多长)?

标签: java android xml sax


【解决方案1】:

我会使用 DOM 解析器。它不如 SAX 高效,但如果它是一个不太大的简单 XML 文件,它是最简单的启动和移动方式。

关于如何在此处使用它的精彩教程:http://tutorials.jenkov.com/java-xml/dom.html

【讨论】:

    【解决方案2】:

    您可能想看看 XPath 库。这是一种更简单的解析xml的方法。它类似于构建 SQL 查询和正则表达式。

    http://www.ibm.com/developerworks/library/x-javaxpathapi.html

    【讨论】:

      【解决方案3】:

      我会选择 SAX 解析器:

      • 它在内存方面效率更高,尤其是对于较大的文件:您不会将整个文档解析为对象,而是解析器对文档执行单向传递并在文档通过时触发事件。
      • 实际上实现起来非常容易:例如看看 IBM 的 Working with XML on Android。只有清单 5 和 6 是其 SAX 解析器的实际实现,所以代码并不多。

      【讨论】:

        【解决方案4】:

        您可以尝试使用Konsume-XML:SAX/STAX/Pull API 太低级,难以使用; DOM 要求 XML 适合内存并且使用起来仍然很笨重。 Konsume-XML 是基于 Pull 的,因此效率极高,而且 API 更高级且更易于使用。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-01-04
          • 1970-01-01
          • 1970-01-01
          • 2013-05-18
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多