51Testing软件测试论坛

标题: 使用Hutool中的FileUtil操作文件笔记 Java实战分享 [打印本页]

作者: lsekfe    时间: 2023-2-7 13:08
标题: 使用Hutool中的FileUtil操作文件笔记 Java实战分享
文件操作是每个项目中必备的一个模块,Hutool中的FileUtil类库封装了大多数文件操作,非常方便,今天给大家分享一下具体的使用示例。
  1、pom.xml 导入依赖包
<dependency>
              <groupId>cn.hutool</groupId>
              <artifactId>hutool-all</artifactId>
              <version>5.8.0</version>
  </dependency>



2、新增测试类 src/main/java/FileTest.java
  这里主要分享常见的集中文件操作,比如查看文件目录是否存在、获取文件列表、创建目录等操作,其余的还有复制文件、移动文件、修改文件名等操作,大家可以自行尝试。
  1.  import cn.hutool.core.io.FileUtil;
  2.   import java.io.File;
  3.   import java.util.List;
  4.   /**
  5.    * [url=home.php?mod=space&uid=267564]@Author[/url] haogm
  6.    * @ClassName FileTest
  7.    * @description: TODO
  8.    * [url=home.php?mod=space&uid=15260991]@datetime[/url] 2023年 01月 28日 13:39
  9.    * @version: 1.0
  10.    */
  11.   public class FileTest {
  12.       public static void main(String[] args) {
  13.           createFileOrDir();
  14.           getFileList();
  15.           exist();
  16.       }
  17.       /**
  18.        * 判断文件是否存在,参数可以是目录或者是文件路径 或者 文件
  19.        */
  20.       private static void exist() {
  21.           // 文件路径
  22.           boolean exist1 = FileUtil.exist("D:\\Test.xlsx");
  23.           // 直接传递文件 作为参数
  24.           boolean exist2 = FileUtil.exist(new File("D:\\Test.xlsx"));
  25.           // 传递目录字符串作为参数
  26.           boolean exist3 = FileUtil.exist("D:\\Test2");
  27.           String msg = "文件路径参数:" + exist1 + ",文件参数:" + exist2 + ",目录参数:" + exist3;
  28.           System.out.println(msg);
  29.       }
  30.       /**
  31.        * 获取目录中的文件及目录列表
  32.        */
  33.       private static void getFileList() {
  34.           File[] files = FileUtil.ls("D:\\Test");
  35.           for (File file : files) {
  36.               System.out.println(file.getAbsoluteFile());
  37.           }
  38.           // 判断当前路径是否是文件
  39.           boolean isFile1 = FileUtil.isFile("D:\\Test");
  40.           boolean isFile2 = FileUtil.isFile("D:\\Test.xlsx");
  41.           // 判断当前路径是否是目录
  42.           boolean isDir1 = FileUtil.isDirectory("D:\\Test");
  43.           boolean isDir2 = FileUtil.isDirectory("D:\\Test.xlsx");
  44.           // 判断是否空文件 输出结果为 false
  45.           boolean empty = FileUtil.isEmpty(new File("D:\\Test.xlsx"));
  46.           // 新建一个空文本 输出结果为 true
  47.           boolean empty2 = FileUtil.isEmpty(new File(" D:\\Test\\111\\123.txt"));
  48.           // 判断目录是否为空 输出结果为 false
  49.           boolean dirEmpty = FileUtil.isDirEmpty(new File("D:\\Test"));
  50.           // 创建一个空的目录 输出结果为 true
  51.           boolean dirEmpty2 = FileUtil.isDirEmpty(new File("D:\\Test\\222"));
  52.           System.out.println(empty + ":" + empty2 + ":" + dirEmpty + ":" + dirEmpty2);
  53.           // 获取指定目录的文件名称列表
  54.           List<String> fileNames = FileUtil.listFileNames("D:\\Test");
  55.           System.out.println(fileNames.toString());
  56.       }
  57.       /**
  58.        * 创建文件&目录
  59.        */
  60.       private static void createFileOrDir() {
  61.           // 创建文件 如果存在则跳过
  62.           FileUtil.touch(new File("D:\\touch\\1.doc"));
  63.           // 创建目录 如果存在跳过
  64.           FileUtil.mkdir("D:\\touch01");
  65.       }
  66.   }
复制代码










欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2