首页 > 编程语言 > 详细

java 拷贝文件夹的实现

时间:2019-09-01 22:37:39      阅读:78      评论:0      收藏:0      [点我收藏+]

public class CopyFiles {
    public static void main(String[] args) throws Exception {
        String src = "C:\\Users\\Administrator\\Desktop\\java\\workspace\\Day01\\sources\\a";//源路径
        String tar = src+1;                                 //目标路径
        copyFolder(src,tar);                                //拷贝文件夹方法
    }

    private static void copyFolder(String srcFolder, String tarFolder) throws Exception {
        File tar = new File(tarFolder);
        if(!tar.exists()){
            tar.mkdir();
        }
        //System.out.println(tar.getName());
        File src = new File(srcFolder);
        File[] srcFiles = src.listFiles();//遍历源文件
        for (File file:srcFiles
             ) {
            if(file.isFile()){//如果是文件则拷贝
                //System.out.println(file.getName());
               // System.out.println("拷贝文件");
                String tarPath = tarFolder+"\\"+file.getName();
               // System.out.println(tarName);
                copyFile(file,tarPath);
            }
            else {//如果不是文件,则新建文件夹,把当前文件拷贝到文件夹
               // System.out.println("拷贝文件夹");
                //新建文件夹
               // System.out.println(file.getName());
                String tarPath = tarFolder+"\\"+file.getName();
                copyFolder(file.getAbsolutePath(),tarPath);
            }
        }
    }

    private static void copyFile(File srcFile, String tarPath) throws Exception {
        FileInputStream in = new FileInputStream(srcFile);
        FileOutputStream out = new FileOutputStream(tarPath);
        int len = 0;
        byte[] temp = new byte[1024];
        while((len=in.read(temp))!=-1){
            out.write(temp,0,len);
            out.flush();
        }
        out.close();
        in.close();
    }

}

 

java 拷贝文件夹的实现

原文:https://www.cnblogs.com/5aixin/p/11443834.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!