java - 使用 ObjectOutput/InputStream 从自定义位置读取/写入

标签 java android

我已阅读开发者信息 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/

相关文章:

java - 使用大小为 N 的自定义字母表将基数 10 的数字转换为基数 (Scala)

java - getResourceAsStream() 在 jar 中返回 null 但在 eclipse 中正常

java - 如何从 fragment Android 中引用 View

android - ContentObserver 的生命周期?

java - 我在 onAttach(Context) 中收到这个奇怪的错误

java - 如何在 Java 中初始化泛型变量?

java - 任何类似过滤器的 lambda 操作不会丢弃吗?

java - Apache HttpClient TCP Keep-Alive(套接字保活)

Android 通知声音不播放,间歇性

android - 如何将 RecyclerView 放在 Toolbar 下方以及 TabLayout 和 ViewPager 上方还以自定义方式处理对滚动的响应?