/**
* 文件夹复制
* @param filePath
* @return
*/
public static void copyFiles(File srcDir,File toDir) {
BufferedInputStream bis = null;
BufferedOutputStream bos = null;
try {
if(!toDir.exists()) {
//创建目标文件夹
toDir.mkdir();
}
//得到该文件夹下所有的文件
File[] files = srcDir.listFiles();
for (File file2 : files) {
//如果是文件
if(file2.isFile()) {
bis = new BufferedInputStream(new FileInputStream(file2));
//根据目标路径和文件名构建目标文件
File toFile = new File(toDir, file2.getName());
byte[] arr = new byte[1024*8];
bis.read(arr);
bos = new BufferedOutputStream(new FileOutputStream(toFile));
bos.write(arr);
}else {//如果是文件夹
//根据原有的目标文件夹路径加上新的文件夹名字 创建新的目标文件夹
File newDir = new File(toDir, file2.getName());
//递归调用
copyFiles(file2, newDir);
}
}
} catch (Exception e) {
} finally {
if(bos != null) {
try {
bos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if(bis != null) {
try {
bis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
将一个文件夹里的文件包括文件夹 copy另一个文件夹里
最新推荐文章于 2023-07-16 16:12:56 发布