案例:复制单级文件夹
数据源目录内容:
public class CopyFolderDemo { public static void main(String[] args) throws IOException{ //1.创建数据源目录对象 File srcFolder = new File("D:\\JavaTest"); //2.获取数据源目录File对象的名称 String srcFolderName = srcFolder.getName(); //3.创建目的地目录File对象,路径名是模块名+srcFolderName组成 File destFolder = new File("myFile",srcFolderName); //4.判断目的地目录对应的File是否存在,如果不存在,就创建 if (!destFolder.exists()){ destFolder.mkdir(); } //5.获取数据源目录下所有文件的File数组 File[] listFiles = srcFolder.listFiles(); //6.遍历File数组,得到每一个File对象,该File对象,其实就是数据源目录下的每一个数据源文件 for (File srcFile : listFiles){ //7.获取每一个数据源文件File对象的名称 String srcFileName = srcFile.getName(); //8.创建目的地文件File对象,路径名是目的地目录+数据源文件名称组成 File destFile = new File("myFile",srcFileName); //9.复制文件 copyFile(srcFile, destFile); } } 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(); } }
运行结果:
学习的博客多用于在笔记中,防止笔记过于臃肿,所以将样例及运行结果放在博客中,后以超链接的形式记录在笔记中,所以有些博文过于单薄。如果有小伙伴遇到问题欢迎评论,看到就会回复,学渣一枚,加油努力。