FileUtils工具类详解

FileUtils

org.apache.commons.io.FileUtils
下载地址:commons-io

Maven依赖
<dependency>
    <groupId>commons-io</groupId>
    <artifactId>commons-io</artifactId>
    <version>2.10.0</version>
</dependency>
FileUtils是一个开源的Java库,提供了对文件和目录进行操作的工具类,包括复制、移动、删除、重命名、读取文件内容等常见的文件操作。
  • copyFile() 复制文件
    FileUtils.copyFile()方法来复制source.txt文件到target.txt文件
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;

public class FileUtilsDemo {
    public static void main(String[] args) {
        File source = new File("source.txt");
        File target = new File("target.txt");
        try {
            FileUtils.copyFile(source, target);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

  • moveFile 移动文件
    FileUtils.moveFile()方法将source.txt文件移动到target.txt文件
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;

public class FileUtilsDemo {
    public static void main(String[] args) {
        File source = new File("source.txt");
        File target = new File("target.txt");
        try {
            FileUtils.moveFile(source, target);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

  • forceDelete() 删除文件
    FileUtils.forceDelete()方法删除source.txt文件
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;

public class FileUtilsDemo {
    public static void main(String[] args) {
        File file = new File("source.txt");
        try {
            FileUtils.forceDelete(file);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

  • readFileToString()
    FileUtils.readFileToString()方法读取source.txt文件的内容
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;

public class FileUtilsDemo {
    public static void main(String[] args) {
        File file = new File("source.txt");
        try {
            String content = FileUtils.readFileToString(file, "UTF-8");
            System.out.println(content);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

  • deleteDirectory() 删除目录及子文件
    FileUtils.deleteDirectory()方法删除名为"myDirectory"的目录。如果该目录不为空,则该方法将递归地删除其内容
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;

public class FileUtilsDemo {
    public static void main(String[] args) {
        File directory = new File("myDirectory");
        try {
            FileUtils.deleteDirectory(directory);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

  • deleteQuietly()
    FileUtils.deleteQuietly()方法删除名为"myFile.txt"的文件。与deleteDirectory()不同,deleteQuietly()方法不会抛出异常,即使文件或目录不存在也不会抛出异常
import org.apache.commons.io.FileUtils;
import java.io.File;

public class FileUtilsDemo {
    public static void main(String[] args) {
        File file = new File("myFile.txt");
        FileUtils.deleteQuietly(file);
    }
}
  • writeStringToFile()
    FileUtils.writeStringToFile()方法将字符串"Hello, world!"写入名为"myFile.txt"的文件中。该方法将文件以指定的编码(UTF-8)打开并写入内容
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;

public class FileUtilsDemo {
    public static void main(String[] args) {
        File file = new File("myFile.txt");
        try {
            FileUtils.writeStringToFile(file, "Hello, world!", "UTF-8");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

  • copyDirectory()
    FileUtils.copyDirectory()方法将名为"sourceDirectory"的目录及其内容复制到名为"targetDirectory"的目录中。该方法会递归地复制目录及其内容
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;

public class FileUtilsDemo {
    public static void main(String[] args) {
        File source = new File("sourceDirectory");
        File target = new File("targetDirectory");
        try {
            FileUtils.copyDirectory(source, target);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
  • forceMkdir()
    FileUtils.forceMkdir()方法创建一个名为"myDirectory"的目录。如果该目录不存在,则该方法将创建该目录,如果该目录已存在,则该方法不会执行任何操作
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;

public class FileUtilsDemo {
    public static void main(String[] args) {
        File directory = new File("myDirectory");
        try {
            FileUtils.forceMkdir(directory);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
  • write()
    FileUtils.write()方法将字符串"Hello, world!"写入名为"myFile.txt"的文件中。与writeStringToFile()不同,write()方法可以追加文本到文件中而不是覆盖文件
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;

public class FileUtilsDemo {
    public static void main(String[] args) {
        File file = new File("myFile.txt");
        try {
            FileUtils.write(file, "Hello, world!", "UTF-8");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
  • istFiles()
    FileUtils.listFiles()方法获取名为"myDirectory"的目录中的所有文件列表。该方法的第一个参数是目录对象,第二个参数是文件扩展名过滤器,第三个参数指定是否要包含子目录中的文件。在这个例子中,我们没有使用扩展名过滤器,第三个参数设置为false,因此仅获取该目录中的文件列表
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.util.List;

public class FileUtilsDemo {
    public static void main(String[] args) {
        File directory = new File("myDirectory");
        List<File> files = (List<File>) FileUtils.listFiles(directory, null, false);
        for (File file : files) {
            System.out.println(file.getName());
        }
    }
}
  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值