对于需要保存的简单程序数据,我之前只使用过属性文件,但我想知道如何保存更复杂的应用程序数据,例如:arraylists,例如。
我如何将这些数据保存到文件中?有没有办法将它保存在我自己的扩展名的文件中(所以不是 .properties 例如,当使用属性方法保存数据时)并确保它不能由用户手动编辑(这很容易用记事本.properties 文件的示例)?
提前致谢。
最好的问候, Skyfe。
对于需要保存的简单程序数据,我之前只使用过属性文件,但我想知道如何保存更复杂的应用程序数据,例如:arraylists,例如。
我如何将这些数据保存到文件中?有没有办法将它保存在我自己的扩展名的文件中(所以不是 .properties 例如,当使用属性方法保存数据时)并确保它不能由用户手动编辑(这很容易用记事本.properties 文件的示例)?
提前致谢。
最好的问候, Skyfe。
序列化为 XML,在持久化之前对数据进行编码/加密,然后在使用您的应用程序时解码/解密数据。
如上所述,最简单的方法是使用内置的序列化机制。只需使用ObjectOutputStream
包裹在FileOutputStream
. 只要列表中的每个项目都是可序列化的,就可以正常工作。
修改并非不可能,但它被相当模糊,例如,一个文本文件(它是初学者的二进制文件)。
您可以使用像SQLite这样的自包含数据库