我想在 Java 中将文件从一个位置复制到另一个位置。做这个的最好方式是什么?
这是我到目前为止所拥有的:
import java.io.File;
import java.io.FilenameFilter;
import java.util.ArrayList;
import java.util.List;
public class TestArrayList {
public static void main(String[] args) {
File f = new File(
"D:\\CBSE_Demo\\Demo_original\\fscommand\\contentplayer\\config");
List<String>temp=new ArrayList<String>();
temp.add(0, "N33");
temp.add(1, "N1417");
temp.add(2, "N331");
File[] matchingFiles = null;
for(final String temp1: temp){
matchingFiles = f.listFiles(new FilenameFilter() {
public boolean accept(File dir, String name) {
return name.startsWith(temp1);
}
});
System.out.println("size>>--"+matchingFiles.length);
}
}
}
这不会复制文件,最好的方法是什么?
您可以使用this(或任何变体):
Files.copy(src, dst, StandardCopyOption.REPLACE_EXISTING);
另外,我建议使用File.separator
or /
代替\\
为了使其兼容多个操作系统,请提供有关此问题/答案的信息here.
由于您不确定如何临时存储文件,请查看ArrayList
:
List<File> files = new ArrayList();
files.add(foundFile);
移动一个List
将文件放入单个目录中:
List<File> files = ...;
String path = "C:/destination/";
for(File file : files) {
Files.copy(file.toPath(),
(new File(path + file.getName())).toPath(),
StandardCopyOption.REPLACE_EXISTING);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)