• Java操作文件Path 和 Paths 及Files类介绍


    我们平时操作文件时可能要写一大堆代码。JDK1.7引入了好用的Path 和 Paths类。

    创建文件,删除文件,复制文件,查找文件,查找文件个数等,只需要调一个Api就能解决,下面开始进行介绍。

    1. Paths类的使用

    代码:

    Path path = Paths.get("d:\\p\\a\\..\\b");
    System.out.println(path);
    System.out.println(path.normalize()); // 正常格式化路径

    打印结果:

    d:\p\a\..\b

    d:\p\b

    2. Files类的使用

    2.1. 检查文件是否存在:Files.exists(path);

    2.2. 创建一级目录:Files.createDirectory(path);

            如果目录已存在,会抛异常 FileAlreadyExistsException

            不能一次创建多级目录,否则会抛异常 NoSuchFileException

    2.3. 创建多级目录用 :Files.createDirectories(path);

    2.4. 复制文件:Files.copy(from, to, StandardCopyOption.REPLACE_EXISTING);

    2.5. 移动文件:Files.move(from, to, StandardCopyOption.ATOMIC_MOVE);

    2.6. 删除文件:Files.delete(path);

            如果文件不存在,会抛异常 NoSuchFileException

    2.7. 删除目录:Files.delete(path);

            如果目录还有内容,会抛异常 DirectoryNotEmptyException

    2.8 遍历目录文件(遍历后可以做任何操作)

    文件数量的统计,删除文件。。。都可以在对应的方法中操作

    1. public static void main(String[] args) throws IOException {
    2. Path path = Paths.get("D:\\nettytest");
    3. // 遍历文件
    4. Files.walkFileTree(path, new SimpleFileVisitor(){
    5. // 操作文件夹
    6. @Override
    7. public FileVisitResult preVisitDirectory(Path dir, BasicFileAttributes attrs)
    8. throws IOException {
    9. System.out.println(dir);
    10. System.out.println("添加自己所要操作文件夹的内容");
    11. return super.preVisitDirectory(dir, attrs);
    12. }
    13. // 操作文件
    14. @Override
    15. public FileVisitResult visitFile(Path file, BasicFileAttributes attrs)
    16. throws IOException {
    17. System.out.println(file);
    18. System.out.println("添加自己所要操作文件的内容");
    19. return super.visitFile(file, attrs);
    20. }
    21. });
    22. }

    这是一套非常好用操作文件的方法,省去了以前复杂的文件操作方法。

  • 相关阅读:
    c# DataTable dt_JmMll,如果放在Task.Run(() =>)里面通过调用UpdateUIDatagridview()更新ui方法DataTable数据变0了
    WPF中 INotifyPropertyChanged
    霸榜双11!科技创新助力九牧卫浴赢战全渠道
    jenkins插件Publish Over SSH因安全问题下架
    HTML5表单验证
    RedisConnectionException: Unable to connect to localhost/<unresolved>:6379
    FVM管理Flutter 环境
    流體小球加載動畫
    js中隐式类型转换与toPrimitive
    python-pytorch 如何使用python库Netron查看模型结构(以pytorch官网模型为例)0.9.1
  • 原文地址:https://blog.csdn.net/m0_57640408/article/details/126333845