Java实战:使用Hutool中的FileUtil操作文件笔记
❤️作者主页:IT技术分享社区
❤️作者简介:大家好,我是IT技术分享社区的博主,从事C#、Java开发九年,对数据库、C#、Java、前端、运维、电脑技巧等经验丰富。
❤️荣誉: CSDN博客专家、数据库优质创作者 🏆,华为云享专家 🏆,阿里云专家博主 🏆
❤️个人博客:IT技术分享社区
❤️公众号/小程序:IT技术分享社区
❤️好文章点赞 👍 收藏 ⭐再看,养成习惯
文件操作是每个Java项目中必备的一个模块,一般我们的做法就是自己封装一个FileUtils的工具类,实现系统当中涉及文件上传、下载、预览等功能,其实我们可以实用Hutool类库当中封装的FileUtil类库,基本包含了大多数针对文件操作,使用也是非常方便,
今天就给大家分享一下具体的使用示例,希望对大家工作当中能有所帮助!
1、pom.xml 导入依赖包
首先需要导入Hutool依赖包,这里导入完整的类库包。
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.8.0</version>
</dependency>
2、新增测试类 src/main/java/FileTest.java
然后新增测试类,这里主要分享日常工作常见的集中文件操作,比如查看文件目录是否存在、获取文件列表、创建目录等操作,其余的还有复制文件、移动文件、修改文件名等等操作,大家可以参考API自行尝试。
import cn.hutool.core.io.FileUtil;
import java.io.File;
import java.util.List;
/**
* @author haogm
* @ClassName FileTest
* @description: TODO
* @datetime 2023年 01月 28日 13:39
* @version: 1.0
*/
public class FileTest {
public static void main(String[] args) {
createFileOrDir();
getFileList();
exist();
}
/**
* 判断文件是否存在,参数可以是目录或者是文件路径 或者 文件
*/
private static void exist() {
// 文件路径
boolean exist1 = FileUtil.exist("D:\\Test.xlsx");
// 直接传递文件 作为参数
boolean exist2 = FileUtil.exist(new File("D:\\Test.xlsx"));
// 传递目录字符串作为参数
boolean exist3 = FileUtil.exist("D:\\Test2");
String msg = "文件路径参数:" + exist1 + ",文件参数:" + exist2 + ",目录参数:" + exist3;
System.out.println(msg);
}
/**
* 获取目录中的文件及目录列表
*/
private static void getFileList() {
File[] files = FileUtil.ls("D:\\Test");
for (File file : files) {
System.out.println(file.getAbsoluteFile());
}
// 判断当前路径是否是文件
boolean isFile1 = FileUtil.isFile("D:\\Test");
boolean isFile2 = FileUtil.isFile("D:\\Test.xlsx");
// 判断当前路径是否是目录
boolean isDir1 = FileUtil.isDirectory("D:\\Test");
boolean isDir2 = FileUtil.isDirectory("D:\\Test.xlsx");
// 判断是否空文件 输出结果为 false
boolean empty = FileUtil.isEmpty(new File("D:\\Test.xlsx"));
// 新建一个空文本 输出结果为 true
boolean empty2 = FileUtil.isEmpty(new File(" D:\\Test\\111\\123.txt"));
// 判断目录是否为空 输出结果为 false
boolean dirEmpty = FileUtil.isDirEmpty(new File("D:\\Test"));
// 创建一个空的目录 输出结果为 true
boolean dirEmpty2 = FileUtil.isDirEmpty(new File("D:\\Test\\222"));
System.out.println(empty + ":" + empty2 + ":" + dirEmpty + ":" + dirEmpty2);
// 获取指定目录的文件名称列表
List<String> fileNames = FileUtil.listFileNames("D:\\Test");
System.out.println(fileNames.toString());
}
/**
* 创建文件&目录
*/
private static void createFileOrDir() {
// 创建文件 如果存在则跳过
FileUtil.touch(new File("D:\\touch\\1.doc"));
// 创建目录 如果存在跳过
FileUtil.mkdir("D:\\touch01");
}
}
作者:天使不哭
微信号:hgmyzhl
微信公众号:小明互联网技术分享社区
CSDN:IT技术分享社区
知乎:IT技术分享社区
出处:小明互联网技术分享社区
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.