Java 用于简单XML节点字符串的Android XML解析器

Java 用于简单XML节点字符串的Android XML解析器,java,android,xml,sax,Java,Android,Xml,Sax,当一系列简单的XML节点(字符串格式)从持久套接字连接到达时,我需要解析它们。定制安卓SAX解析器真的是最好的方法吗?这样做有点过分 我曾天真地希望能够将字符串转换为XML,然后使用点语法或类似的语法引用名称/属性 我会使用DOM解析器。它的效率不如SAX,但如果它是一个不太大的简单XML文件,那么它是启动和移动的最简单方法 关于如何在这里使用它的优秀教程:我将使用DOM解析器。它的效率不如SAX,但如果它是一个不太大的简单XML文件,那么它是启动和移动的最简单方法 关于如何在这里使用它的优秀教

当一系列简单的XML节点(字符串格式)从持久套接字连接到达时,我需要解析它们。定制安卓SAX解析器真的是最好的方法吗?这样做有点过分


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

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


关于如何在这里使用它的优秀教程:

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


关于如何在这里使用它的优秀教程:

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


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


我会选择SAX解析器:

  • 它在内存方面效率更高,特别是对于较大的文件:您不需要将整个文档解析为对象,而是解析器对文档执行单个单向传递,并在传递过程中触发事件
  • 它实际上非常容易实现:例如,看看IBM。只有清单5和清单6是SAX解析器的实际实现,所以代码不多

我会选择SAX解析器:

  • 它在内存方面效率更高,特别是对于较大的文件:您不需要将整个文档解析为对象,而是解析器对文档执行单个单向传递,并在传递过程中触发事件
  • 它实际上非常容易实现:例如,看看IBM。只有清单5和清单6是SAX解析器的实际实现,所以代码不多

您可以尝试使用:SAX/STAX/Pull API级别太低,难以使用;DOM需要将XML放入内存中,而且使用起来仍然笨重。Konsume XML基于Pull,因此非常高效,但API级别更高,更易于使用。

您可以尝试使用:SAX/STAX/Pull API级别太低,难以使用;DOM需要将XML放入内存中,而且使用起来仍然笨重。Konsume XML基于Pull,因此非常高效,但API级别更高且更易于使用。

因此格式简单,但数据量大(系列有多长)?因此格式简单,但数据量大(系列有多长)?