51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 806|回复: 0
打印 上一主题 下一主题

使用Hutool中的FileUtil操作文件笔记 Java实战分享

[复制链接]
  • TA的每日心情
    擦汗
    昨天 09:02
  • 签到天数: 1046 天

    连续签到: 4 天

    [LV.10]测试总司令

    跳转到指定楼层
    1#
    发表于 2023-2-7 13:08:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    文件操作是每个项目中必备的一个模块,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.   }
    复制代码





    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-15 03:19 , Processed in 0.066006 second(s), 24 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表