我对 Java 比较陌生,但对 Matlab 有更多经验。我想知道存储相对少量的数据的最佳方法是什么,这些数据已经在一个程序中计算出来,应该在另一个程序中使用。
示例:程序 A 计算 100 个值并将其存储在数组中。现在我想在程序 B 中访问这个数组,因为它需要这些值。当然,我可以只写一个程序,它也实现了A部分。但是,现在每次我想执行整个程序时,所有的值都必须重新计算(A部分),这是一个浪费资源。在 Matlab 中,我能够轻松地将数组保存在 .mat 文件中,并将其加载到不同的脚本中。
环顾四周寻找答案,我发现了序列化选项( What is object serialization? ),我认为这适合做我想做的事情。我的问题:序列化是在 Java 中存储少量数据的最简单、最快的解决方案,还是有更快、更用户友好的选项(如 Matlab 中的 .mat 文件)?
最佳答案
我认为您有多种选择来完成这项工作。 Java 对象序列化是一种可能的方式。从我的角度来看,还有其他选项可以序列化数据:
- Write and read一个简单的文本文件来存储计算值。
- 使用 Java XML 绑定(bind)架构 ( JAXB ) 将带注释的 Java 类写入 XML 文件。同样的 JSON 也可用。
- 使用轻量级数据库,如 SQLite或HSQLDB (原生 Java 数据库)。
- 使用 Apache Thrift或Protocol Buffer将 Java 对象反/序列化为文件。
关于java - Java 中的序列化是存储和稍后访问(少量)数据的最佳/最简单方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41721914/