java 文件复制操作

2019-05-18 07:08:44来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

本案例采用第三方 jar 包完成,commons-io-2.5.jar,

这个 jar 对文件操作非常方便,大家可以尝试使用一下。

 

这里贴一个简单的 demo 供大家使用

import java.io.File;
import java.io.IOException;

import org.apache.commons.io.FileUtils;

public class MyFileUtils {
    public static void main(String[] args) throws IOException {

        String srcPath = "F:/copyFile/src";
        String destPath = "F:/copyFile/dest123";
        copyFile(srcPath, destPath);

        // copyDirectory(srcPath, destPath);
        // readFileToString(srcPath);
    }

    // 创建文件夹
    public static void makeDir(String destPath) {
        File newFilePath = new File(destPath);
        if (!newFilePath.exists()) {
            newFilePath.mkdirs();
        }
    }

    // 复制文件夹及其内容
    public static void copyDirectory(String srcPath, String destPath) throws IOException {
        File file = new File(srcPath);
        makeDir(destPath);
        File destFile = new File(destPath);
        FileUtils.copyDirectory(file, destFile);
    }

    // 复制文件(应用场景:复制的同时更改文件名称)
    public static void copyFile(String srcPath, String destPath) throws IOException {
        File src = new File(srcPath);
        makeDir(destPath);
        File[] srcFiles = src.listFiles();
        if (srcFiles.length > 0) {
            for (File file : srcFiles) {
                String filename = file.getName();
                if (file.isDirectory()) {
                    copyFile(file.getAbsolutePath(), destPath);
                }
                if (filename.endsWith("html")) {
                    int index = filename.indexOf(".");
                    String newFileName = filename.substring(0, index) + "复制" + filename.substring(index);
                    File destFile = new File(destPath + "/" + newFileName);
                    FileUtils.copyFile(file, destFile);
                }
            }
        }
    }

    // 把文件 内容转成字符串
    public static void readFileToString(String srcPath) throws IOException {
        File src = new File(srcPath);
        File[] srcFiles = src.listFiles();
        if (srcFiles.length > 0) {
            for (File file : srcFiles) {
                String filename = file.getName();
                if (file.isDirectory()) {
                    readFileToString(file.getAbsolutePath());
                }
                if (filename.endsWith("html")) {
                    String str = FileUtils.readFileToString(file, "utf-8");
                    System.out.println(str);
                }
            }
        }
    }
}

简单说明一下,

复制文件,包含文件夹 用到   FileUtils.copyDirectory(file, destFile);  

复制单个文件  FileUtils.copyFile(file, destFile);

把文件内容读取为字符串  FileUtils.readFileToString(file, "utf-8");

 


原文链接:https://www.cnblogs.com/stormlong/p/10880198.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:openOffice word转pdf,pdf转图片优化版

下一篇:springboot+idea+maven学习第一天(springboot入门,idea整合maven