复制单级文件夹下的文件

2022/5/28 23:24:11

本文主要是介绍复制单级文件夹下的文件,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

案例描述:

在本地 D:\iofile 文件夹目录下有以下几类文件,把该文件夹全部复制到另外一个位置( C:\iofile )

步骤分析:

  • 1.描述一个数据源文件夹
  • 2.获取数据源文件夹的名称
  • 3.拼接一个目的地文件夹路径
  •   File(模块名称 + 数据源文件夹名称)
  • 4.在目的地创建该文件夹
  • 5.数据源文件路径:
  •   数据源文件夹.listfiles
  •   所有的文件的File对象
  • 6.目的地文件路径:
  •   目的地文件夹 + 数据源文件名称
  • 7.完成文件复制

File 类  缓冲字节流(BufferedInputStream、BufferedOutputStream)

先看上面两个,方便更好地读懂下面的代码

import java.io.*;
public class Copyfolder02 {
    public static void main(String[] args) throws IOException{
        // 1.描述一个数据源文件夹
        File srcFolder = new File("D:\\iofile");
        // 2.获取数据源文件夹的名称
        String srcFolderName = srcFolder.getName();   // iofile
        // 3.拼接一个目的地文件夹路径
        File destFolder = new File("C:\\", srcFolderName);  // C:\iofile
        // 4.在目的地创建该文件夹
        if (!destFolder.exists()){       // 是否真实存在的路径
            destFolder.mkdir();   // 创建一级文件夹
        }
        // 5.获取数据源文件路径
        File[] srcFiles = srcFolder.listFiles(); //返回一个抽象路径名数组,包含文件夹下所有文件名
        for (File srcFile : srcFiles) {
            String srcFileName = srcFile.getName(); // 拿到每一个文件名
            // 描述目的地文件路径
            File destFile = new File(destFolder, srcFileName); // 拼接 (C:\iofile + 文件名)
            // 6.完成复制
            copyFile(srcFile, destFile);
        }
    }
    // 复制全部文件
    public static void copyFile(File srcFile, File destFile) throws IOException {
        FileInputStream fis = new FileInputStream(srcFile);
        BufferedInputStream bis = new BufferedInputStream(fis);

        FileOutputStream fos = new FileOutputStream(destFile);
        BufferedOutputStream bos = new BufferedOutputStream(fos);
        // 缓冲流一次读写一个字节数组
        byte[] bytes = new byte[8192];  // 字符数组
        int len;
        while ((len = bis.read(bytes)) != -1){  // 读
            bos.write(bytes,0,len);     // 写
        }
        bis.close();
        bos.close();
    }
}

运行代码后,全部文件将会被复制到 C:\iofile 文件夹下:

 



这篇关于复制单级文件夹下的文件的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程