java - Android:以事务方式将大量文件移动到 SD 卡?

标签 java android android-file

假设我有一个数据库,其中有数百个 blob 存储在单独的文件中,我想将其移动到 SD 卡,以编程方式执行此操作以确保不会留下任何内容的最佳方法是什么?

我意识到我只能在不同的装载之间复制文件。

那么我可以将所有文件复制到“缓存”中的子目录中,然后自动将子目录移动到正确的位置吗?或者我可以将所有文件写入带有“temp”前缀的目录,并在验证后将其重命名吗?

最佳答案

移动文件夹的可能性(我的意思是,仅通过重命名来重新定位它)取决于文件系统,可能最好不要依赖 in。此外,即使它有效,它仅在单个安装的边界内起作用。我建议在成功复制所有文件后简单地重命名该文件夹。

如果由于之前的崩溃而发现带有“临时”前缀的文件夹,则可以简单地将其删除(“回滚”)。

关于java - Android:以事务方式将大量文件移动到 SD 卡?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21458088/

相关文章:

java - 使用 HashMap 读取/写入 txt 文件 - 小修复

java - 在一个实体中映射三个相同的表

java - 什么 Android 代码模仿屏幕截图功能(同时降低音量和电源按钮)?

android - 如何在外部 SD 卡而不是设备存储中写入文件?

java - 将文件发送到 Http 时出现 OutputStream 内存不足错误

java - 如何解决org.hibernate.LazyInitializationException?

android - 具有居中元素的 Horizo​​ntalScrollView

android - 默认的 Android Studio 抽屉导航图标

android - File.createTempFile() VS 新文件()

java - 如何在 Java 中以 0.1f 为增量在 0.1f 和 1.0f 之间迭代?