import java.io.*;
/**
需求:
把E:\\itcast 这个文件夹复制到模块目录下
*/
public class CopyFolderDemo {
public static void main(String[] args) throws IOException {
//1:创建数据源目录File对象,路径是E:\\itcast
File srcFolder = new File("E:\\itcast");
//2:获取数据源目录File对象的名称(itcast)
String srcFolderName = srcFolder.getName();
//3:创建目的地目录File对象,路径名是模块名+itcast组成(myCharStream\\itcast)
File destFolder = new File("D:\\Java\\java作业\\myCharStream", srcFolderName);
//4:判断目的地目录对应的File是否存在,如果不存在,就创建
if (!destFolder.exists()) {
destFolder.mkdir();
}
//5:获取数据源目录下所有文件的File数组
File[] listFiles = srcFolder.listFiles();
//6:遍历File数组,得到每一个File对象,该File对象,其实就是数据源文件
for (File srcFile : listFiles) {
//7:获取数据源文件File对象的名称(psc.png)
String srcFileName = srcFile.getName();
//8:创建目的地文件File对象,路径名是目的地目录psc.png组成(myCharStream\\itcast\\psc.png)
File destFile = new File(destFolder, srcFileName);
//9:复制文件
CopyFile(srcFile, destFile);//copy(数据源,目的地)
}
}
private static void CopyFile(File srcFile, File destFile) throws IOException {
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(srcFile));
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(destFile));
byte[] bys = new byte[1024];
int len;
while ((len = bis.read(bys)) != -1) {
bos.write(bys, 0, len);
}
bis.close();
bos.close();
}
}