Java复制单级文件夹

2022/3/27 17:23:25

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

package com.czie.iot1913.lps.IO.BufferStream.Better;

import java.io.*;

/**
 * FileName: CopyFileTest01 复制单级文件夹
 * Author:   lps
 * Date:     2022/3/26 20:08
 * Sign:刘品水 Q:1944900433
 */
public class CopyFileTest01 {
    public static void main(String[] args) throws IOException{
        // new File
        File srcFolder = new File("E:\\itcast");

        String srcFoldername = srcFolder.getName();

        File destFolder = new File("F:\\JavaCode", srcFoldername);

        //boolean exists()
        //检查文件或目录是否存在这种抽象路径名记。
        //!!!!!!!!!!!!!!!!!!
        if (!destFolder.isDirectory()) {
            destFolder.mkdir();
        }
        //boolean mkdir()
        //创建该目录下的抽象路径名命名。

        //File[] listFiles()
        //返回表示抽象路径名的目录中的文件的路径名表示抽象的数组。  获取数据源目录下所有文件的File数组
        File[] listFiles = srcFolder.listFiles();

        //该遍历file数组 得到file对象 (数据源文件)
        for (File srcFile : listFiles) {
            //获取数据源文件File文件名称
            String srcFileName = srcFile.getName();
            //创建目的地文件file对象,路径名是目的地+hh.jpg组成F:\\JavaCode\\itcast\\hh.jpg
            //File(String parent, String child) 
            //创建从父路径名的字符串和一个孩子的一个新的 File实例文件。 
            File deseFile = new File(destFolder, srcFileName);

            copyFile(srcFile,deseFile);


        }


    }

    private static void copyFile(File srcFile, File deseFile) throws IOException {
        BufferedInputStream bis = new BufferedInputStream(new FileInputStream(srcFile));
        BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(deseFile));

        byte[] bys = new byte[1024];
        int len;
        while ((len= bis.read(bys))!=-1){
            bos.write(bys,0,len);
        }
        bis.close();
        bos.close();

    }
}

 

 



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


扫一扫关注最新编程教程