DOM在Android设备上解析大型XML文件时的内存问题

时间:2010-06-15 20:28:11

标签: xml android dom memory parsing

我有一个Android应用程序,可以为用户解析XML文件,并以更加移动友好的格式显示结果。该应用程序适用于大多数用户,但有些用户有大量的数据,应用程序因为内存不足而崩溃。

有没有办法让DOM样式的XML解析器在经过一定量的解析后退出解析数据?我只需要前30个左右的元素,这样可以提高应用程序的效率。

我想使用SAX或pull解析器,但我正在解析的XML 无效,我无法控制它。除非有人有一些很好的SAX解决方案让我解析凌乱无效的XML,否则我认为DOM是唯一可行的方法。

感谢阅读!

1 个答案:

答案 0 :(得分:0)

这可能不是最佳解决方案,但这就是我最终要做的事情。

我正在使用HTTPClient来获取文件,我想出了文件的最小可能大小,它仍然具有我需要的数据量,并使用该信息来设置请求的范围标头。

这会导致请求只返回部分响应,但它适用于我的情况。