Java : Writing an object to a file avoiding java. lang.StackOverflowError

标签 java serialization object stack-overflow buffering

我想将大量数据写入文件。数据包含在一个对象中。对象被实现为可序列化。 问题是,当我尝试使用 ObjectOutputStream 的 writeObject 将其写入文件时,它会给出 StackOverflowError,因为对象的大小很大。

我只需要保存该对象,以便我可以再次打开并使用它,更改一些值,然后再次保存到磁盘。

目标文件是用 Neuroph 框架创建的 NeuralNetwork,所以我不喜欢研究它的大代码并逐一挑选数据并将其序列化。

请有人建议一种对对象进行切片(或某种缓冲效果)并至少保存的方法。我认为这种事情可以解决问题。

谢谢。 :)

最佳答案

您是否可以考虑增加堆栈大小(-Xss2m 左右),因为也许只需在堆栈上添加更多内容就可以完成任务?

除此之外,没有真正的方法可以分割对象图以进行序列化(在不了解对象的情况下)。

关于Java : Writing an object to a file avoiding java. lang.StackOverflowError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8683909/

相关文章:

java - 如何取所选列所选行的总和值

java - 我们可以从 java.io.DataInput 读取 User 对象吗

c# - XML 序列化错误

javascript - 如何根据属性值对数组进行分组?

java - SonarQube 显示一些技术债务问题,如 "blank"

java - 定向最小边界框

java - java中如何统计tax中某个关键字出现了多少次?

java - 如何自定义复杂对象的序列化?

object - 如何获取在 angularjs 中更改的对象?

c++ - 对象内的字符串数组