java - 将文件从 SD 卡 move 到应用程序内部数据(存储)

标签 java android file move

背景

我需要获取以下文件并将其 move 到我的应用程序内部存储空间。

mnt/sdcard/downloads

我可以通过使用以下命令复制文件,然后从 SD 卡中删除文件来成功实现此目的。

writer = new BufferedWriter(new FileWriter(file));
writer.write(data);
writer.close();

复制大文件时我需要双倍的空间(我没有)。

问题

是否可以“move ”文件(更改目录)而不是复制删除

其他信息 调查我发现的问题:

public boolean renameTo (File newPath)

doc

Both paths are on the same mount point. On Android, applications are most likely to hit this restriction when attempting to copy between internal storage and an SD card. quote taken from here

我不知道我是否可以在同一个挂载点上获得两条路径。

最佳答案

听起来您正在处理非常大的文件,因此您可能会研究某种渐进式缩小一个/增加另一种类型的操作 - 虽然大概只有在您可以检测到没有足够的空间来保存完整副本的情况下。

关于java - 将文件从 SD 卡 move 到应用程序内部数据(存储),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13588859/

相关文章:

python - Python:替换文件中的行而不读取整个文件

java - 如何以编程方式接收 whatsapp 消息?

java - 可以/应该编写一个与对象的 equals 方法一致的比较器

java - 通过 JDBC 查询 Oracle DB 给出 null,而直接查询给出输出

android - 在我的应用程序包中获取 AppWidgetProviders 列表

c - 按名称或年份对飓风进行排序的 C 程序

java - Docker 客户端 Java API : The server failed to respond with a valid HTTP response

android - ImageView的scaleType不起作用

带有图像和数组文本的 Android Listview

java - ArrayList<ClassName> 中的 add 方法不适用于参数 (String)