• 【从入门到起飞】JavaSE—IO工具包(Commons-io,Hutool) (2)


    🎊专栏【JavaSE】
    🍔喜欢的诗句:天行健,君子以自强不息。
    🎆音乐分享【如愿】
    🎄欢迎并且感谢大家指出小吉的问题🥰


    在这里插入图片描述
    Java的IO(输入/输出)工具包提供了一系列类和接口,用于处理输入和输出操作。Java的IO工具包包括在java.io包中,主要用于处理文件、流以及其他形式的输入和输出。

    这些工具包的主要功能包括:

    读写文件:File、FileReader、FileWriter等类用于对文件进行读写操作。
    字节流和字符流:InputStream、OutputStream、Reader和Writer等类分别用于字节和字符数据的输入输出操作。
    对象序列化:ObjectInputStream和ObjectOutputStream等类用于对象的序列化和反序列化,可以将对象转换为字节序列并存储到文件或者通过网络传输。
    管道:PipedInputStream和PipedOutputStream、PipedReader和PipedWriter等类用于在不同线程之间进行通信。
    缓冲流:BufferedInputStream、BufferedOutputStream、BufferedReader和BufferedWriter等类提供了缓冲功能,从而提高了IO操作的性能。
    数据流:DataInputStream和DataOutputStream等类用于基本数据类型的输入输出。
    文件操作:RandomAccessFile类允许以任意顺序读写文件,而不是严格按照顺序。
    总的来说,Java的IO工具包提供了丰富的功能,可以满足各种不同的输入输出需求,包括文件处理、网络通信、数据流操作等。

    🌺工具包Commons-io

    Commons-io是apache开源基金组织提供的一组有关IO操作的开源工具包,提高IO流的开发效率

    Commons-io工具包我传到夸克网盘里面了,有需要的同学请点击下方链接
    Commons-io工具包

    ⭐使用步骤

    🛸新建一个文件夹lib

    在这里插入图片描述
    在这里插入图片描述
    以后我们要使用的第三方jar包都会拷贝到lib文件夹中,方便管理(后缀一定得是.jar

    🛸导入jar包

    我们把网盘里面的压缩包解压
    在这里插入图片描述
    选择第一个jar包,复制粘贴到lib文件夹中
    (点击lib,CTRL+V即可)
    在这里插入图片描述

    🛸使项目和jar包产生关系

    在这里插入图片描述
    在这里插入图片描述
    出现这个箭头,证明关联成功
    在这里插入图片描述

    🏳️‍🌈代码实现

    在这里插入图片描述

    ✨复制文件

    package IODemo4;
    
    import org.apache.commons.io.FileUtils;
    
    import java.io.File;
    import java.io.IOException;
    
    public class Demo1 {
        public static void main(String[] args) throws IOException {
            File src=new File("G:\\a.txt");
            File dest=new File("G:\\copy.txt");
            FileUtils.copyFile(src,dest);
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    ✨复制文件夹

    🤖仅拷贝文件夹里面的内容
    package IODemo4;
    
    import org.apache.commons.io.FileUtils;
    
    import java.io.File;
    import java.io.IOException;
    
    public class Demo1 {
        public static void main(String[] args) throws IOException {
            File src=new File("G:\\a");
            File dest=new File("G:\\copy");
            FileUtils.copyDirectory(src,dest);
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    🤖拷贝文件夹里面的内容和文件夹本身
    package IODemo4;
    
    import org.apache.commons.io.FileUtils;
    
    import java.io.File;
    import java.io.IOException;
    
    public class Demo1 {
        public static void main(String[] args) throws IOException {
            File src=new File("G:\\a");
            File dest=new File("G:\\copy");
            FileUtils.copyDirectoryToDirectory(src,dest);
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    🛸清空文件夹

    仅保留文件夹,文件夹里面的内容被清空

    package IODemo4;
    
    import org.apache.commons.io.FileUtils;
    
    import java.io.File;
    import java.io.IOException;
    
    public class Demo1 {
        public static void main(String[] args) throws IOException {
            File src=new File("G:\\a");
            FileUtils.cleanDirectory(src);
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    🌺工具包Hutool

    Hutool工具包我上传到夸克网盘里面了,有需要的同学请点击链接自取
    Hutool工具包

    ⭐使用步骤

    在这里插入图片描述

    使用步骤同上,也是导入包到lib文件夹中,然后把包和项目关联起来

    🏳️‍🌈代码实现

    在这里插入图片描述

    🛸创建对象和文件夹

    package IODemo4;
    
    import cn.hutool.core.io.FileUtil;
    import org.apache.commons.io.FileUtils;
    
    import java.io.File;
    import java.io.IOException;
    
    public class Demo1 {
        public static void main(String[] args) throws IOException {
            //根据参数创建file对象
            File file = FileUtil.file("G:\\","aaa","bbb","a.txt");
            System.out.println(file);
            //根据参数创建文件
            File touch=FileUtil.touch(file);
            System.out.println(touch);
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    在这里插入图片描述
    在这里插入图片描述

    🛸写入内容

    在这里插入图片描述

    🛸续写

    在这里插入图片描述

    🛸把文件内容打印到控制台上

    在这里插入图片描述
    在这里插入图片描述

    如果大家对于文章内容有疑问,欢迎在评论区进行讨论

  • 相关阅读:
    jmeter性能测试使用梯度测试的方法
    使用 Docker 部署 GLPI 资产管理系统
    第五天 脚本与UI系统
    电气无线测温系统在设备监测中的作用
    嵌入式系统中相关的高质量开源项目
    java计算机毕业设计小区车辆管理系统源码+数据库+系统+lw文档+mybatis+运行部署
    首次公开,GitHub点击破百万的分布式高可用算法小册被我扒下来了
    西门子S7-1200使用LRCF通信库与安川机器人进行EthernetIP通信的具体方法示例
    [附源码]Java计算机毕业设计SSM儿童闲置物品交易网站
    几百万数据量的 Excel 导出?
  • 原文地址:https://blog.csdn.net/m0_72853403/article/details/134442730