风-fmgao

导航

java文件拷贝

文件拷贝

package com.sly.uploadfile.base;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;

/**
 * 文件拷贝
 */
public class CopyDir {

    public static void main(String[] args) {
        try {
            copyDir("D:\\soft\\mysql", "D:\\tmp");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    /**
     * 拷贝目录
     */
    public static void copyDir(String srcStr, String destStr) throws Exception {
        File src = new File(srcStr);
        File tempFile = new File(destStr + "//" + src.getName());
        if (src.exists()) {
            // 目录
            if (src.isDirectory()) {
                if (!tempFile.exists()) {
                    tempFile.mkdir();
                }
                File[] files = src.listFiles();
                for (File f : files) {
                    copyDir(f.getAbsolutePath(), tempFile.getAbsolutePath());
                }

            } else {
                // 文件
                // 源文件
                FileInputStream fin = new FileInputStream(srcStr);

                // 目标文件
                FileOutputStream fout = new FileOutputStream(destStr + "//" + src.getName());

                int len = -1;
                byte[] buffer = new byte[1024];
                while ((len = fin.read(buffer)) != -1) {
                    fout.write(buffer, 0, len);
                }
                fout.close();
                fin.close();
            }
        }
    }

}

 

posted on 2020-06-26 21:06  风-fmgao  阅读(241)  评论(0编辑  收藏  举报