解析大型xml文件时出现Java堆空间错误

时间:2014-10-16 14:07:15

标签: java xml

我想解析一个大的xml文件(785mb)并将数据写入csv。当我尝试解析文件时,我收到java heapspace错误(内存不足)。 我尝试将堆大小增加到1024mb,但代码可以处理最大50mb的文件。

请让我知道在java中解析大型xml文件的解决方案。

2 个答案:

答案 0 :(得分:0)

这里的解决方案是使用Streaming Api for XML(StAX)。 这是好的tutorial

答案 1 :(得分:0)

您应该使用SAXParser而不是DOMParser 不同之处在于它不会在内存中加载完整的XML数据。

查看本教程:http://www.mkyong.com/java/how-to-read-xml-file-in-java-sax-parser/

此致

罗曼。