IO相关的常用工具包

常用工具包Commons-io

Commons-io是apache开源基金组织提供的一组有关IO操作的开源工具包。

作用:提高IO流的开发效率。

使用步骤:

1、在项目中创建一个文件夹:lib

2、将jar包复制粘贴到lib文件夹

3、右键点击jar包,选择Add as Library--->点击OK

4、在类中导包使用

java 复制代码
public class CommonsIODemo1 {
    public static void main(String[] args) throws IOException {
    /*
    FileUtils类
       static void copyFile(File srcFile, File destFile)                 复制文件
       static void copyDirectory(File srcDir, File destDir)              复制文件夹
       static void copyDirectoryToDirectory(File srcDir, File destDir)   复制文件夹
       static void deleteDirectory(File directory)                       删除文件夹
       static void cleanDirectory(File directory)                        清空文件夹
       static String readFileToString(File file, Charset encoding)       读取文件中的数据变成成字符串
       static void write(File file, CharSequence data, String encoding)  写出数据

    IOUtils类
       public static int copy(InputStream input, OutputStream output)    复制文件
       public static int copyLarge(Reader input, Writer output)          复制大文件
       public static String readLines(Reader input)                      读取数据
       public static void write(String data, OutputStream output)        写出数据
    */
        File src1 = new File("myio\\a.txt");
        File dest1 = new File("myio\\copy.txt");
        FileUtils.copyFile(src1,dest1);//复制文件

        File src2 = new File("D:\\aaa");
        File dest2 = new File("D:\\bbb");
        FileUtils.copyDirectoryToDirectory(src2,dest2);//复制文件夹,会把aaa文件夹复制到bbb文件夹里面

        File src3 = new File("D:\\bbb");
        FileUtils.cleanDirectory(src3);//清空文件夹
    }
}

常用工具包Hutool

Hutool官网: https://hutool.cn/

API文档: https://apidoc.gitee.com/dromara/hutool/

中文使用文档: https://hutool.cn/docs/#/

java 复制代码
public class Test1 {
    public static void main(String[] args) {
    /*
     FileUtil类:
       file:根据参数创建一个file对象
       touch:根据参数创建文件

       writeLines:把集合中的数据写出到文件中,覆盖模式。
       appendLines:把集合中的数据写出到文件中,续写模式。
       readLines:指定字符编码,把文件中的数据,读到集合中。
       readUtf8Lines:按照UTF-8的形式,把文件中的数据,读到集合中

       copy:拷贝文件或者文件夹
    */
        File file1 = FileUtil.file("D:\\", "aaa", "bbb", "a.txt");
        System.out.println(file1);//D:\aaa\bbb\a.txt

        File touch = FileUtil.touch(file1);
        System.out.println(touch);

        ArrayList<String> list = new ArrayList<>();
        list.add("aaa");
        list.add("aaa");
        list.add("aaa");
        File file2 = FileUtil.writeLines(list, "D:\\a.txt", "UTF-8");
        System.out.println(file2);

        ArrayList<String> list2 = new ArrayList<>();
        list2.add("aaa");
        list2.add("aaa");
        list2.add("aaa");
        File file3 = FileUtil.appendLines(list2, "D:\\a.txt", "UTF-8");//不会清空文件内容
        System.out.println(file3);
        
        List<String> list4 = FileUtil.readLines("D:\\a.txt", "UTF-8");
        System.out.println(list4);
    }
}
相关推荐
JavaArchJourney32 分钟前
TreeMap 源码分析
java
whitepure35 分钟前
万字详解Java中的IO及序列化
java·后端
还梦呦1 小时前
2025年09月计算机二级Java选择题每日一练——第一期
java·开发语言
黑客影儿1 小时前
黑客哲学之学习笔记系列(三)
笔记·学习·程序人生·安全·职场和发展·网络攻击模型·学习方法
与火星的孩子对话1 小时前
Unity高级开发:反射原理深入解析与实践指南 C#
java·unity·c#·游戏引擎·lucene·反射
花开富贵ii1 小时前
代码随想录算法训练营四十六天|图论part04
java·数据结构·算法·图论
Miraitowa_cheems1 小时前
LeetCode算法日记 - Day 15: 和为 K 的子数组、和可被 K 整除的子数组
java·数据结构·算法·leetcode·职场和发展·哈希算法
答题卡上的情书1 小时前
java第一个接口
java·开发语言
RainbowSea2 小时前
伙伴匹配系统(移动端 H5 网站(APP 风格)基于Spring Boot 后端 + Vue3 - 06
java·spring boot·后端
CHENFU_JAVA2 小时前
EasyExcel 合并单元格最佳实践:基于注解的自动合并与样式控制
java·excel