java中删除文件/文件夹的3种方法

这篇具有很好参考价值的文章主要介绍了java中删除文件/文件夹的3种方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、通过io删除文件

    /**
     * 通过递归逐层删除文件信息
     *
     * @param filePath
     */
    public static void deleteFileByIO(String filePath) {
        File file = new File(filePath);
        File[] list = file.listFiles();
        if (list != null) {
            for (File temp : list) {
                deleteFileByIO(temp.getAbsolutePath());
            }
        }
        file.delete();
    }

2、通过Files.walk删除文件

    /**
     * 使用Files.walk遍历文件夹(包含子文件夹及子其文件),遍历结果是一个Stream
     * 对每一个遍历出来的结果进行处理,调用Files.delete就可以了。
     *
     * @param filePath
     * @throws IOException
     */
    public static void deleteFileByStream(String filePath) throws IOException {
        Path path = Paths.get(filePath);
        try (Stream<Path> walk = Files.walk(path)) {
            walk.sorted(Comparator.reverseOrder())
                    .forEach(FileUtil::deleteDirectoryStream);
            // FileUtil为类名
        }
    }

    private static void deleteDirectoryStream(Path path) {
        try {
            Files.delete(path);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

3、通过 Files.walkFileTree删除文件

 /**
     * 使用walkFileTree方法遍历整个文件目录树,使用FileVisitor处理遍历出来的每一项文件或文件夹
     * FileVisitor的visitFile方法用来处理遍历结果中的“文件”,所以我们可以在这个方法里面删除文件
     * @param filePath
     * @throws IOException
     */
    public static void deleteFileByWalkFileTree(String filePath) throws IOException {
        Path path = Paths.get(filePath);
        Files.walkFileTree(path,
                new SimpleFileVisitor<Path>() {
                    // 先去遍历删除文件
                    @Override
                    public FileVisitResult visitFile(Path file,
                                                     BasicFileAttributes attrs) throws IOException {
                        Files.delete(file);
                        System.out.printf("文件被删除 : %s%n", file);
                        return FileVisitResult.CONTINUE;
                    }

                    // 再去遍历删除目录
                    @Override
                    public FileVisitResult postVisitDirectory(Path dir,
                                                              IOException exc) throws IOException {
                        Files.delete(dir);
                        System.out.printf("文件夹被删除: %s%n", dir);
                        return FileVisitResult.CONTINUE;
                    }

                }
        );
    }

文章来源地址https://www.toymoban.com/news/detail-679928.html

到了这里,关于java中删除文件/文件夹的3种方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 3、HDFS的使用(读写、上传、下载、遍历、查找文件、整个目录拷贝、只拷贝文件、列出文件夹下文件、删除文件及目录、获取文件及文件夹属性等)-java

    1、hadoop3.1.4简单介绍及部署、简单验证 2、HDFS操作 - shell客户端 3、HDFS的使用(读写、上传、下载、遍历、查找文件、整个目录拷贝、只拷贝文件、列出文件夹下文件、删除文件及目录、获取文件及文件夹属性等)-java 4、HDFS-java操作类HDFSUtil及junit测试(HDFS的常见操作以及H

    2024年02月16日
    浏览(61)
  • 空文件夹删不掉打不开,“该项目不存在请确认该项目位置“,“项目正在打开中无法删除“,“文件已损坏或者已经被移动删除“(多种方法图文详解,细节需要注意,以及可能遇到的问题)

    这个删不掉的文件或文件夹其实是Windows系统的祖传bug到目前为止依然没有修复,所以说我们需要通过特别的手段来处理它,听我慢慢讲他的缘由可能会对解决这个问题的帮助更多,会有几种方法,我都试过了的,我把最后一种成功的放在第一个讲,没有成功的可以参考。 事情缘由因

    2024年02月06日
    浏览(89)
  • rm——删除文件、文件夹

    rm命令来自英文单词:remove 可用于删除文件、文件夹 rm [-r -f] 参数1 参数2 …… 参数N -r选项,可选,用于删除文件夹 -f选项,可选 ,表示force,强制删除(不会弹出提示确认信息) 普通用户删除内容不会弹出提示,只有root管理员用户删除内容会有提示 所以一般普通用户用不

    2024年02月03日
    浏览(61)
  • linux 删除指定文件夹外的其他所有(文件)文件夹

    方法一. 删除指定文件夹外的其他所有文件夹命令: 方法二. 删除指定文件夹外的其他所有文件夹命令: 查看当前文件夹下有哪些文件和子文件夹,当看到俩个文件夹和多个文件,需求是只保留 public 这个文件夹 其他的文件夹和文件 统统都删除,如下图所示,只要一个命令:

    2024年02月09日
    浏览(84)
  • git删除远程文件夹或文件

    1.操作一 预览将要删除的文件(如果不清楚该目录下是否存在不应该删除的文件), 加上 -n 这个参数,执行命令时,是不会删除任何文件,而是展示此命令要删除的文件列表预览。 2.确定无误后删除文件(本地的文件或文件夹不会被删除) 3.提交到本地代码 4.推送到远程服

    2024年02月12日
    浏览(60)
  • Mac 如何删除文件及文件夹?可以尝试使用终端进行删除

    MacOS 是 Mac 电脑采用的操作系统,你知道 Mac 如何删除文件吗?除了直接将文件或者文件夹拖入废纸篓之外,我们还可以采用终端命令的办法去删除文件,本文为大家总结了 Mac 删除文件方法。 在使用 Mac 电脑的时候为什么要采用命令行删除文件而不是直接文件拖入废纸篓呢?

    2024年03月16日
    浏览(83)
  • C#怎么删除指定文件或文件夹

    本文主要介绍了C#如何删除指定文件或文件夹,具有很好的参考价值,希望对大家有所帮助。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 public static string deleteOneFile( string fileFullPath)          {              // 1、首先判断文件或者文件路径是否存在              i

    2024年02月13日
    浏览(49)
  • 用脚本定时删除文件夹内所有文件

            一个朋友打电话过来,说工作不太如意,自己做的工作成果被老板过河拆桥,想离职又不甘心被白那啥,问我能不能做一个批处理文件,到自己离开一个月以后,自动清除自己的文档,于是开始做了:         文件做好了,保存成 .ansi 格式,后缀为.bat 的批处

    2024年02月07日
    浏览(63)
  • matlab删除文件及文件夹的操作

    1.删除文件 2. 删除文件夹 删除空文件夹 删除文件夹(无论是否为空) 3. 其他方法 调用doc命令

    2024年02月15日
    浏览(52)
  • MFC的文件操作——获取指定文件夹下面所有文件路径和删除指定文件夹下面所有文件

    目录 1.获取指定文件夹下面所有文件路径  2.删除指定文件夹下面所有文件 3.MFC的CString 字符串操作 4.MFC的 Int类型 与 Htuple类型数据之间转换  5.上述提及的函数应用 6.MFC与Halcon联合编程,获取halcon异常 7.MFC获取指定路径下的文件夹路径           ①、文件夹路径获取方式 ②

    2024年02月16日
    浏览(116)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包