关于复制文件夹的demo(不考虑文本):
大佬勿喷,新手上路,感谢三连
package day12_Map_IO.work;
import java.io.File;
import java.io.IOException;
//需求:复制文件夹
public class work {
public static void main(String[] args) throws IOException {
File oldFile = new File("D:\\DATA\\IdeaProjects\\BigData1\\data1");
File copyFile = new File("D:\\DATA\\IdeaProjects\\BigData1\\copydata");
copy(oldFile, copyFile);
}
public static void copy(File f1, File f2) throws IOException {
File[] files1 = f1.listFiles();
File[] files2 = f2.listFiles();
for (File f : files1) {
if (f.isFile()) {//文件
File f11 = new File(f2.getPath(), f.getName());
f11.createNewFile();
} else {//目录
File f12 = new File(f2.getPath(), f.getName());
f12.mkdirs();
copy(f, f12);
}
}
}
}
本题用的是递归,需求是复制文件夹,注意考虑的点就是文件夹里包含文件这样层层递进的结构,用IO中基础File方法可以实现!