android - 大数据,如何更快地解析一个巨大的xml文件?

标签 android xml parsing xml-parsing bigdata

我有大量xml 格式 的圣经数据。我正在制作一个安卓圣经应用程序。但是我觉得我的数据非常庞大。

在我的研究中,我了解到 xml 解析器会解析整个文件,直到它获得所需的标记。有谁知道解析所有数据的更简单快捷的方法。

最佳答案

当数据提取逻辑相对简单且仅向前时,SAX 解析可能是合适的......如果你想要轻松和舒适地遍历层次结构或 XPath,那么你运气不好......

JDOM 或 DOM 存在严重的内存使用问题...

VTD-XML 是一个库,涵盖了对于 SAX StAX 过于复杂的用例,以及对于 DOM 或 JDOM 过于占用内存的用例。

虽然 VTD-XML 将所有内容加载到内存中,但内存占用量仅为 XML 文档大小的 1.3 到 1.5 倍,效率比 DOM 高 3 到 5 倍。

它还导出一个类似于游标 API 的 DOM 并支持 XPath 1.0...

Can SAX Parsers use XPath in Java?

关于android - 大数据,如何更快地解析一个巨大的xml文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37767035/

相关文章:

android - 如何在某些部分上方生成带有标题的 ListView?

c# - 使用linq合并具有相同结构的多个XML文件并根据键删除重复项

iOS JSON 解析错误

android - 火力地堡 : How to check file already exist before Upload files

java - 如何从一个类调用另一个类的对象

xml - 如何在 XSLT 1.0 中迭代 IDREFS 值?

java - 将 String 转换为 int

android - 在 Android 中解析 RSS 提要

java - 从 onpostexecute 发送值

java - JAXB 解码错误 : Expected elements are <{ } Root>