android - 如何将 Android Parcelable 数组保存到文件中?

标签 android file outputstream persistent parcelable

我有一个 Location 对象的 ArrayList。 ArrayList 通常有 从 1,000 到 10,000 个位置对象。

我希望能够持久化 ArrayList,然后将其读回 稍后。

我假设写出整个过程会快得多 将 Location 对象的 ArrayList 作为单个文件而不是存储 SQLiteDB 中的每个 Location 对象。

谁能告诉我一些示例代码来读/写一个 ArrayList 定位对象,或者建议更好的解决方案?

最佳答案

您真的必须每次都存储所有 10k 个位置,然后将它们全部删除并存储一组新的 10k 个位置吗?还是偶尔更新一下? (例如删除或添加多行)。如果是后者,那么您希望使用 SQLite,因为使用 Db 执行这些操作会非常容易。

另请注意,SQLite 也只是文件系统上的一个存储文件,例如,没有像 MySQL 那样的数据库服务器。

除此之外,之前已经在 SO 上讨论过,因此您可能想看看这些:

Android data storage - File vs SQLite

Sqlite vs File based data storing?

关于android - 如何将 Android Parcelable 数组保存到文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10398768/

相关文章:

android - fragment 中的映射 fragment

android - 在不对 subview 进行动画处理的情况下对 ViewGroup 进行动画处理

java - zip 文件的内容写入不正确

java - ByteArrayInputStream、SequenceInputStream、StringReader在哪里使用

java - 输出流到输入流

java - JList 变为空白 [我认为输出流缓冲问题]

android - 闪屏边距问题?

android - 如何在插入时防止Android设备进入休眠状态

C++ getline 读取整个文件

javascript - 正在下载的文件没有正确的名称和扩展名