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);
    }
}
相关推荐
daidaidaiyu3 小时前
一文学习 工作流开发 BPMN、 Flowable
java
SuniaWang4 小时前
《Spring AI + 大模型全栈实战》学习手册系列 · 专题六:《Vue3 前端开发实战:打造企业级 RAG 问答界面》
java·前端·人工智能·spring boot·后端·spring·架构
sheji34164 小时前
【开题答辩全过程】以 基于springboot的扶贫系统为例,包含答辩的问题和答案
java·spring boot·后端
nap-joker4 小时前
【多模态解耦】DecAlign:用于解耦多模态表示学习的分层跨模态对齐
学习·多模态融合·最优传输·多模态表征学习·特征解耦·音频+图像+文本·原型引导
551只玄猫4 小时前
【数据库原理 实验报告1】创建和管理数据库
数据库·sql·学习·mysql·课程设计·实验报告·数据库原理
m0_726965985 小时前
面面面,面面(1)
java·开发语言
IDZSY04305 小时前
AI社交平台进阶指南:如何用AI社交提升工作学习效率
人工智能·学习
happymaker06265 小时前
web前端学习日记——DAY05(定位、浮动、视频音频播放)
前端·学习·音视频
xuhaoyu_cpp_java5 小时前
过滤器与监听器学习
java·经验分享·笔记·学习
炽烈小老头6 小时前
【 每天学习一点算法 2026/03/23】数组中的第K个最大元素
学习·算法·排序算法