2010-05-13 65 views
0

我有一个500Mb的csv文件。我需要将其转换为XML文件。
我正在使用Jaxb创建xml文件。它对于少量的数据工作正常。
但是对于大量的数据,如300 MB,它正在抛出内存异常。
谁能告诉我,我怎样才能创建每个元素,并将其写入到一个文件
不使用JAXB创建整棵树?”Jaxb直接生成XML到OutputStream

感谢 鲜于

回答

0

将CSV到XML,你应该期望我建议你将堆大小增加到10Gb,如果你想立刻为整个文件使用Jaxb,可能会更高。

另一种方法是将一行CSV转换为一次,你仍然可以使用Jaxb来做到这一点,但是你可能会发现一行println语句是m更简单。在这种情况下,您可以预计您的程序将使用最长行的10倍。 (可能是几KB)

+0

你可以请提供任何示例,我怎样才能使用jaxb一次做一行。 谢谢 Sonu – sonu 2010-05-13 21:08:08

+0

在文件的开头放置一个标题,读一行,为这一行生成XML,重复直到没有更多行,写入页脚。 – 2010-05-13 21:10:07

+0

可以请你..提供一个示例代码。 谢谢, Sonu – sonu 2010-05-13 21:12:13