我正在阅读不同的方法/工具来序列化对象,我正在为我的应用程序寻找最新的建议(因为我可以找到许多2012、2010年的类似question+answers……)。
我需要把一些java对象写到磁盘上。我喜欢节省磁盘空间,因为这些对象可能包含大量数据,而且我希望能很快完成。
到目前为止,它已经用java标准序列化完成了,但是实现可能不是很好(没有显式的serialID集,...)。我读过关于kryo库的文章,但我有点害怕使用第三方库,因为我不知道它们的维护情况如何,/它们的使用有多普遍。或者我是否应该改进可序列化接口的使用,如果是,是否有关于正确实现的好文档?
发布于 2014-08-22 16:21:04
此解决方案基于Java标准库,有助于节省磁盘空间
ObjectOutputStream oos = new ObjectOutputStream(new GZIPOutputStream(new FileOutputStream("file")));
oos.writeObject(obj);
...
ObjectInputStream ois = new ObjectInputStream(new GZIPInputStream(new FileInputStream("file")));
obj = ois.readObject();
...https://stackoverflow.com/questions/25442461
复制相似问题