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

news2025/5/15 22:49:25

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

文章目录

  • 🌺工具包Commons-io
    • ⭐使用步骤
      • 🛸新建一个文件夹lib
      • 🛸导入jar包
      • 🛸使项目和jar包产生关系
    • 🏳️‍🌈代码实现
      • ✨复制文件
      • ✨复制文件夹
        • 🤖仅拷贝文件夹里面的内容
        • 🤖拷贝文件夹里面的内容和文件夹本身
      • 🛸清空文件夹
  • 🌺工具包Hutool
    • ⭐使用步骤
    • 🏳️‍🌈代码实现
      • 🛸创建对象和文件夹
      • 🛸写入内容
      • 🛸续写
      • 🛸把文件内容打印到控制台上

在这里插入图片描述
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);
    }
}

✨复制文件夹

🤖仅拷贝文件夹里面的内容
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);
    }
}

🤖拷贝文件夹里面的内容和文件夹本身
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);
    }
}

🛸清空文件夹

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

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);
    }
}

🌺工具包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);
    }
}

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

🛸写入内容

在这里插入图片描述

🛸续写

在这里插入图片描述

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

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1221140.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java编程中,使用时间戳机制实现增量更新的示例

一、需求 课程下可以创建多个讲次,然后分享出去。 在没有更新分享前,通过分享链接看到的课程及讲次详情是快照。课程制作者可以继续修改调整自己的课程,对分享用户是不可见。 当制作者完成修改后,更新分享,让用户看到…

ALlegro怎么恢复到初始操作界面?

1.View 2.UI Settings 3.Reset UI To Default

USART(1)

什么是USART 单片机上有的许多的外设 单片机通过这些外设实现特殊的功能 如果单片机想要和蓝牙模块实现数据的传输那么就也需要单片机有串口模块来和蓝牙模块的串口进行连接 相互传输数据 在单片机上的串口就叫USART USART就是单片机上的外设 来实现串口之间的通信功能 USART名…

ROS服务(Service)通信:通信模型、Hello World与拓展

服务通讯是基于请求响应模式的,是一种应答机制。 用于偶然的、对时时性有要求、有一定逻辑处理需求的数据传输场景。 一、服务通讯模型 服务是一种双向通讯方式,它通过请求和应答的方式传递消息,该模型涉及到三个角色: Master…

74基于matlab的PSO-ELM的多输入,单输出结果预测,输出训练集和测试机预测结果及误差。

基于matlab的PSO-ELM的多输入,单输出结果预测,输出训练集和测试机预测结果及误差,适应度值。数据可更换自己的,程序已调通,可直接运行。 74matlabPSO-ELM多输入单输出 (xiaohongshu.com)

Redis实战篇(1)

实战篇Redis 短信登录 这一块我们会使用redis共享session来实现 商户查询缓存 通过本章节,我们会理解缓存击穿,缓存穿透,缓存雪崩等问题,让小伙伴的对于这些概念的理解不仅仅是停留在概念上,更是能在代码中看到对应…

AMEYA360:罗姆旗下蓝碧石面向电动汽车开发出AVAS专用的语音合成LSI

罗姆集团旗下的蓝碧石科技株式会社(以下简称“蓝碧石科技”)面向电动汽车(xEV)开发出AVAS(车辆接近报警系统)专用的语音合成LSI“ML22120xx”(ML22120TB、ML22120GP)。 在推动实现碳中和(无碳)社会的进程中,混合动力汽车和纯电动汽车(EV)的数量不断增加。由于这些车…

Flutter笔记: 在Flutter应用中使用SQLite数据库

Flutter笔记 在Flutter应用中使用SQLite数据库(基于sqflite) 作者:李俊才 (jcLee95):https://blog.csdn.net/qq_28550263 邮箱 :291148484163.com 本文地址:https://blog.csdn.net/q…

人工智能引领环境保护的新浪潮:技术应用及其影响

在全球范围内,环境保护已经成为一个迫切的话题。随着人工智能技术的发展,它开始在环境保护领域扮演越来越重要的角色。AI不仅能够帮助更有效地监测环境变化,还能提出解决方案来应对环境问题。 污染监测与控制: AI系统可以分析来自…

【C语言】深入解开指针(三)

🌈write in front :🔍个人主页 : 啊森要自信的主页 真正相信奇迹的家伙,本身和奇迹一样了不起啊! 欢迎大家关注🔍点赞👍收藏⭐️留言📝>希望看完我的文章对你有小小的帮助&#x…

企业云盘:企业文件数据存储与共享的全面解决方案

企业云盘为企业的文件数据的存储与管理提供了一种安全、高效又便捷的解决方案。在企业文件数据存储管理上,企业云盘有什么优势吗?本文将重点分析企业云盘的优点和好处! 一、安全性 对于企业文件数据管理工具,安全是首位。与个人…

【源码系列】短剧系统开发国际版短剧系统软件平台介绍

系统介绍 短剧是一种快节奏、紧凑、有趣的戏剧形式,通过短时间的精彩表演,向观众传递故事的情感和思考。它以其独特的形式和魅力,吸引着观众的关注,成为了当代戏剧娱乐中不可或缺的一部分。短剧每一集都是一个小故事,…

【Java 进阶篇】深入浅出:JQuery 事件绑定的奇妙世界

在前端的世界里,事件是不可或缺的一部分。用户的点击、输入、滚动等行为都触发着各种事件,而如何在代码中捕捉并处理这些事件是每位前端开发者必须掌握的技能之一。本文将带你深入浅出,探索 JQuery 中的事件绑定,为你揭开这个奇妙…

IIC总线概述和通信时序代码详细图文解析

IIC总线 1 IIC总线概述 I2C总线两线制包括:串行数据SDA(Serial Data)、串行时钟SCL(Serial Clock)。总线必须由主机(通常为微控制器)控制,主机产生串行时钟(SCL&#x…

【漏洞复现】用友移动管理系统文件上传

漏洞描述 用友移动系统管理旧版本uploadApk接口存在任意文件上传,攻击者可在无需登录的情况下上传恶意文件,执行任意命令 免责声明 技术文章仅供参考,任何个人和组织使用网络应当遵守宪法法律,遵守公共秩序,尊重社…

基于模拟退火算法优化概率神经网络PNN的分类预测 - 附代码

基于模拟退火算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于模拟退火算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于模拟退火优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要:针对PNN神…

redis运维(十一) python操作redis

一 python操作redis ① 安装pyredis redis常见错误 说明:由于redis服务器是5.0.8的,为了避免出现问题,默认最高版本的即可 --> 适配 ② 操作流程 核心:获取redis数据库连接对象 ③ Python 字符串前面加u,r,b的含义 原因: 字符串在…

使用 SMI 指标增强股票分析:amCharts JS Crack

使用 SMI 指标增强股票分析 2023 年 11 月 16 日 amCharts 5:股票图表 v5.5.3 增加了对随机动量指数指标的支持,帮助用户做出更明智的交易决策。 amCharts 5:股票图表提供了用于显示基于时间的数据的分析工具,无论是金融、股票还是…

【MySQL】聚合函数:汇总、分组数据

文章目录 学习目标MAX()、MIN()、AVG()、SUM()、COUNT()COUNT(*) 得到所有记录条目DISTINCT去重练习1(使用UNION , SUM, BETEEN AND)GROUP BY子句练习2(使用sum,group by, join on, …

NET8 ORM 使用AOT SqlSugar

.NET AOT8 基本上能够免强使用了, SqlSugar ORM也支持了CRUD 能在AOT下运行了 Nuget安装 SqlSugarCore 具体代码 StaticConfig.EnableAot true;//启用AOT 程序启动执行一次就好了//用SqlSugarClient每次都new,不要用单例模式 var db new SqlSugarClient(new ConnectionC…