我已阅读开发者信息 here ,但我不确定我是否做对了。我想要我的文件在外部存储(SD 卡)上。
`ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/MyAppName/FileName.srl")));
out.writeObject( MyObject );
out.close();`
这将编译,但我需要知道一件事:具有完全相同的 MyObject 类的另一个应用程序能否从此序列化文件读取和写入?还是对于具有不同 UserID 的应用程序会以某种方式失败?
最佳答案
只要在两个应用程序中使用相同版本的类,这两个应用程序就能够读取/写入彼此的序列化流。
如果您还没有这样做,您应该在可序列化类中声明一个 static final long serialVersionUID
,以便在将来检测任何可能的版本不兼容。
关于java - 使用 ObjectOutput/InputStream 从自定义位置读取/写入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21815741/