我正在开发一个Android应用程序,我需要创建一个相当大的XML文件。
我已经尝试过使用DOM文档但是因为它驻留在内存中会引发“内存不足”错误。
有人可以建议替代解决方案吗?这是一个从头开始创建的XML文件。
答案 0 :(得分:2)
我会逐步将XML写入Stream或Writer,以遍历您想要转换为XML的数据。这样,您不需要比原始数据更多的内存。
答案 1 :(得分:1)
对于大数据量,您将永远不会使用内存。如何划分数据并创建小块,然后将所有这些组合在一起。
或者另一个选择是使用SAX解析器,消耗的memory更少。
答案 2 :(得分:1)
Streaming XML是要走的路。最“香草”的方法可能是使用StAX:http://docs.oracle.com/javaee/5/tutorial/doc/bnbem.html#bnbff