java删除目录,java删除路径下所有文件

本文目录一览:

java中怎么删除整个文件夹

public boolean deleteDirectory(String sPath) {

//如果sPath不以文件分隔符结尾,自动添加文件分隔符

if (!sPath.endsWith(File.separator)) {

sPath = sPath + File.separator;

}

File dirFile = new File(sPath);

//如果dir对应的文件不存在,或者不是一个目录,则退出

if (!dirFile.exists() || !dirFile.isDirectory()) {

return false;

}

flag = true;

//删除文件夹下的所有文件(包括子目录)

File[] files = dirFile.listFiles();

for (int i = 0; i files.length; i++) {

//删除子文件

if (files[i].isFile()) {

flag = deleteFile(files[i].getAbsolutePath());

if (!flag) break;

} //删除子目录

else {

flag = deleteDirectory(files[i].getAbsolutePath());

if (!flag) break;

}

}

if (!flag) return false;

//删除当前目录

if (dirFile.delete()) {

return true;

} else {

return false;

}

}

用java写一个方法,用于彻底删除一个目录,注:该目录为多级目录,且目录下有文件。

import java.io.File;

public class DeleteDirectory {

    /**

     * 删除空目录

     * @param dir 将要删除的目录路径

     */

    private static void doDeleteEmptyDir(String dir) {

        boolean success = (new File(dir)).delete();

        if (success) {

            System.out.println(“Successfully deleted empty directory: ” + dir);

        } else {

            System.out.println(“Failed to delete empty directory: ” + dir);

        }

    }

    /**

     * 递归删除目录下的所有文件及子目录下所有文件

     * @param dir 将要删除的文件目录

     * @return boolean Returns “true” if all deletions were successful.

     *                 If a deletion fails, the method stops attempting to

     *                 delete and returns “false”.

     */

    private static boolean deleteDir(File dir) {

        if (dir.isDirectory()) {

            String[] children = dir.list();

 //递归删除目录中的子目录下

            for (int i=0; ichildren.length; i++) {

                boolean success = deleteDir(new File(dir, children[i]));

                if (!success) {

                    return false;

                }

            }

        }

        // 目录此时为空,可以删除

        return dir.delete();

    }

    /**

     *测试

     */

    public static void main(String[] args) {

        doDeleteEmptyDir(“new_dir1”);

        String newDir2 = “new_dir2”;

        boolean success = deleteDir(new File(newDir2));

        if (success) {

            System.out.println(“Successfully deleted populated directory: ” + newDir2);

        } else {

            System.out.println(“Failed to delete populated directory: ” + newDir2);

        }     

    }

}

Java如何删除文件夹下的子目录及其包含的子文件

下面给你介绍Java删除文件夹下的子目录及其包含的子文件的方法:

package com.cn.test1;

import java.io.File;

public class DeleteAllFiles {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

String filePath = “e:\\fq\\”;

System.out.println(“开始删除文件”);

File file = new File(filePath);

// deleteFile(file);

deleteAllFilesOfDir(file);

System.out.println(“删除成功!!”);

}

//递归删除文件夹(方法一)

public static void deleteFile(File file) {

if (file.exists()) {//判断文件是否存在

if (file.isFile()) {//判断是否是文件

file.delete();//删除文件

} else if (file.isDirectory()) {//否则如果它是一个目录

File[] files = file.listFiles();//声明目录下所有的文件 files[];

for (int i = 0;i files.length;i ++) {//遍历目录下所有的文件

deleteFile(files[i]);//把每个文件用这个方法进行迭代

}

file.delete();//删除文件夹

}

} else {

System.out.println(“所删除的文件不存在”);

}

}

//方法二

public static void deleteAllFilesOfDir(File path) {

if (!path.exists())

return;

if (path.isFile()) {

path.delete();

return;

}

File[] files = path.listFiles();

for (int i = 0; i files.length; i++) {

deleteAllFilesOfDir(files[i]);

}

path.delete();

}

}

原创文章,作者:QGDG,如若转载,请注明出处:https://www.506064.com/n/142936.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
QGDGQGDG
上一篇 2024-10-14 18:43
下一篇 2024-10-14 18:44

相关推荐

  • 如何查看Anaconda中Python路径

    对Anaconda中Python路径即conda环境的查看进行详细的阐述。 一、使用命令行查看 1、在Windows系统中,可以使用命令提示符(cmd)或者Anaconda Pro…

    编程 2025-04-29
  • java client.getacsresponse 编译报错解决方法

    java client.getacsresponse 编译报错是Java编程过程中常见的错误,常见的原因是代码的语法错误、类库依赖问题和编译环境的配置问题。下面将从多个方面进行分析…

    编程 2025-04-29
  • Java JsonPath 效率优化指南

    本篇文章将深入探讨Java JsonPath的效率问题,并提供一些优化方案。 一、JsonPath 简介 JsonPath是一个可用于从JSON数据中获取信息的库。它提供了一种DS…

    编程 2025-04-29
  • Java腾讯云音视频对接

    本文旨在从多个方面详细阐述Java腾讯云音视频对接,提供完整的代码示例。 一、腾讯云音视频介绍 腾讯云音视频服务(Cloud Tencent Real-Time Communica…

    编程 2025-04-29
  • Java Bean加载过程

    Java Bean加载过程涉及到类加载器、反射机制和Java虚拟机的执行过程。在本文中,将从这三个方面详细阐述Java Bean加载的过程。 一、类加载器 类加载器是Java虚拟机…

    编程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介绍

    本文将详细介绍Java Milvus SearchParam withoutFields的相关知识和用法。 一、什么是Java Milvus SearchParam without…

    编程 2025-04-29
  • vue下载无后缀名的文件被加上后缀.txt,有后缀名的文件下载正常问题的解决

    本文旨在解决vue下载无后缀名的文件被加上后缀.txt,有后缀名的文件下载正常的问题,提供完整的代码示例供参考。 一、分析问题 首先,需了解vue中下载文件的情况。一般情况下,我们…

    编程 2025-04-29
  • Rclone复制所有目录

    如果你需要将本地文件复制到云端,或者从云端复制文件到本地,Rclone是一个非常好的选择。本文将介绍如何使用Rclone复制所有目录。 一、安装Rclone 首先,你需要在你的机器…

    编程 2025-04-29
  • 如何在Java中拼接OBJ格式的文件并生成完整的图像

    OBJ格式是一种用于表示3D对象的标准格式,通常由一组顶点、面和纹理映射坐标组成。在本文中,我们将讨论如何将多个OBJ文件拼接在一起,生成一个完整的3D模型。 一、读取OBJ文件 …

    编程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java语言中的一个版本,于2014年3月18日发布。本文将从多个方面对Java 8中某一周的周一进行详细的阐述。 一、数组处理 Java 8新特性之一是Stream…

    编程 2025-04-29

发表回复

登录后才能评论