import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
/*
* 复制单级文件夹:
* 将 src/cn/itcast2 文件夹下的所有内容,复制到 a文件夹中
*/
public class Test2 {
public static void main(String[] args) throws IOException {
File srcDIR = new File("src/cn/itcast2");
File destDIR = new File("a");
copyDIR(srcDIR, destDIR);
}
public static void copyDIR(File srcDIR, File destDIR)
throws FileNotFoundException, IOException {
//如果目标文件夹不存在,则创建目标文件夹
if(!destDIR.exists()) {
destDIR.mkdirs();
}
//依次拿到源文件夹下的所有文件对象
File[] listFiles = srcDIR.listFiles();
//迭代数组,依次拿到每一个文件
for (File file : listFiles) {
//将每次拿到的这个文件复制到新的文件夹中
//找到源文件对象
File oldFile = file;
//找到目标文件对象
File newFile = new File("a",oldFile.getName());
//文件复制
//创建流对象
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(oldFile));
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(newFile));
//先读
byte[] bytes = new byte[1024];
int len;
while((len=bis.read(bytes))!=-1) {
//后写
bos.write(bytes, 0, len);
}
//关闭流
bos.close();
bis.close();
}
}
}
|
|