【发布时间】:2011-03-23 22:08:45
【问题描述】:
当它们从持久套接字连接到达时,我需要解析一系列简单的 XML 节点(字符串格式)。自定义 Android SAX 解析器真的是最好的方法吗?在this way
我天真地希望我可以将字符串转换为 XML,然后使用点语法或类似的语法来引用名称/属性。
【问题讨论】:
-
所以格式很简单,但是数据多吗(系列有多长)?
当它们从持久套接字连接到达时,我需要解析一系列简单的 XML 节点(字符串格式)。自定义 Android SAX 解析器真的是最好的方法吗?在this way
我天真地希望我可以将字符串转换为 XML,然后使用点语法或类似的语法来引用名称/属性。
【问题讨论】:
我会使用 DOM 解析器。它不如 SAX 高效,但如果它是一个不太大的简单 XML 文件,它是最简单的启动和移动方式。
关于如何在此处使用它的精彩教程:http://tutorials.jenkov.com/java-xml/dom.html
【讨论】:
您可能想看看 XPath 库。这是一种更简单的解析xml的方法。它类似于构建 SQL 查询和正则表达式。
http://www.ibm.com/developerworks/library/x-javaxpathapi.html
【讨论】:
我会选择 SAX 解析器:
【讨论】:
您可以尝试使用Konsume-XML:SAX/STAX/Pull API 太低级,难以使用; DOM 要求 XML 适合内存并且使用起来仍然很笨重。 Konsume-XML 是基于 Pull 的,因此效率极高,而且 API 更高级且更易于使用。
【讨论】: