递归复制文件
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
public class Subject02 {
/**
*
* @author blue
*
* @date 2020年8月8日
*
*/
public static void main(String[] args) {
File src = new File("E:\\test");
File target = new File("E:\\test1");
CopyFile(src, target);
}
public static void CopyFile(File src, File target) {
BufferedInputStream bfi = null;
BufferedOutputStream bout = null;
System.out.println(src.getName());
if (src.isDirectory()) {
if (!target.exists()) {
target.mkdir();
}
String Files[] = src.list();
for (String string : Files) {
File src1 = new File(src, string);
File target1 = new File(target, string);
CopyFile(src1, target1);
}
} else {
try {
bfi = new BufferedInputStream(new FileInputStream(src));
bout = new BufferedOutputStream(new FileOutputStream(target));
int len = -1;
byte[] b = new byte[1024];
while ((len = bfi.read(b)) != -1) {
bout.write(b, 0, len);
}
} catch (Exception e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
try {
bout.flush();
bfi.close();
bout.close();
} catch (IOException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
}