java 剪切文件夹下的所有文件包括文件夹到另一个盘符并保留文件名

public class IORename {
//目标盘符
private static final char destPan= 'e';
public static void main(String[] args) {
File file = new File("d:/dd");
rename2Files(file);
}
// 剪切多层文件
public static void rename2Files(File file) {
if (file.exists()) {
// 1.取出文件名然后修改盘符
String dest = file.getAbsolutePath();
StringBuilder builder = new StringBuilder(dest);
builder.setCharAt(0, destPan);
dest = builder.toString();
//目标文件
File file2 = new File(dest);
if (file.isDirectory()) {
// 2.创建dest文件夹
file2.mkdirs();
File[] files = file.listFiles();
for (File f : files) {
rename2Files(f);
}
}
// 3.将文件拷贝到另外盘符的同路径同名文件下
if (!file2.exists()) {
// 创建目标文件
try {
file2.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
// 4.剪切文件
file.renameTo(file2);
// 5确保删除文件夹
file.delete();
}
}


}

你可能感兴趣的:(java基础)