package ioTest;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
/*
* 需求:复制多级文件夹
*/
public class Test5 {
public static void main(String[] args) {
File srcFile = new File("C:\\changzidong");
File destFile = new File("C:\\test");
copyFolder(srcFile, destFile);
}
private static void copyFolder(File srcFile, File destFile) {
if(srcFile.isDirectory()) {
//是文件夹
File newFolder = new File(destFile , srcFile.getName());
newFolder.mkdir();
//创建文件数组
File fileArray[] = srcFile.listFiles();
for(File file : fileArray) {
//递归,如果还有文件夹,
copyFolder(file , newFolder);
}
}else {
//是文件
File newFile = new File(destFile , srcFile.getName());
copyFile(srcFile, newFile);
}
}
private static void copyFile(File srcFile, File destFile) {
try {
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(srcFile));
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(destFile));
byte bys [] = new byte[1024];
int len = 0;
len = len + 0 ;
while ((len = bis.read(bys)) != -1) {
bos.write(bys,0,len);
}
bis.close();
bos.close();
} catch (Exception e) {
}
}
}
JAVA复制多级文件夹
最新推荐文章于 2023-03-22 22:04:36 发布