我在位置C:\Desktop\input\Acsady\dZI_3.png
的文件夹中有一组.png文件。现在,我希望将图像的副本复制到不同的位置C:\Desktop\input\final\Acsady\5_dZI_3.png
。
我该怎么做呢?我目前有以下代码,但没有给我预期的结果。
String newName = outdir + File.separator + "final" + File.separator + nfname;
File newfname = new File(outdir + File.separator + "final" + File.separator + nfname);
String source = outdir + File.separator + lkupfname;
String target = outdir + File.separator + "final" + File.separator + nfname;
System.out.println("Copying file: "+source +" to "+target);
boolean status = filename.renameTo(newfname);
System.out.println("status : "+status);
我每次都将状态设置为false,这意味着renameTo函数不成功。
答案 0 :(得分:0)
如果您使用的是Java 1.7,请查看Files.copy
。
答案 1 :(得分:0)
这是从java文档中提取的。可能有助于您找到根本原因。
重命名此抽象路径名表示的文件。 此方法行为的许多方面本质上依赖于平台:重命名操作可能无法将文件从一个文件系统移动到另一个文件系统,它可能不是原子的,如果具有目标抽象路径名的文件可能不会成功已经存在。应始终检查返回值以确保重命名操作成功。