我想将大量数据写入文件。数据包含在一个对象中。对象被实现为可序列化。 问题是,当我尝试使用 ObjectOutputStream 的 writeObject 将其写入文件时,它会给出 StackOverflowError,因为对象的大小很大。
我只需要保存该对象,以便我可以再次打开并使用它,更改一些值,然后再次保存到磁盘。
目标文件是用 Neuroph 框架创建的 NeuralNetwork,所以我不喜欢研究它的大代码并逐一挑选数据并将其序列化。
请有人建议一种对对象进行切片(或某种缓冲效果)并至少保存的方法。我认为这种事情可以解决问题。
谢谢。 :)
最佳答案
您是否可以考虑增加堆栈大小(-Xss2m
左右),因为也许只需在堆栈上添加更多内容就可以完成任务?
除此之外,没有真正的方法可以分割对象图以进行序列化(在不了解对象的情况下)。
关于Java : Writing an object to a file avoiding java. lang.StackOverflowError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8683909/