`
louisling
  • 浏览: 143051 次
  • 性别: Icon_minigender_1
  • 来自: ZhuHai
社区版块
存档分类
最新评论

Delete sub folder(FileUtils)

    博客分类:
  • Java
 
阅读更多
public class FileUtils {
    /** Delete all specified subFolder, e.g. delete all bin directory of c:/testApp. */
    public static void deleteSubFolder(String sPath, String subFoldName, boolean isRecurse) {
        File file = new File(sPath);
        File[] files = file.listFiles();
        for (File f : files) {
            if (f.isDirectory()) {
                if (f.getName().equals(subFoldName)) {
                    System.out.println("Delete folder: " + f.getAbsolutePath());
                    deleteFileOrFolder(f.getAbsolutePath());
                }
                else
                    deleteSubFolder(f.getAbsolutePath(), subFoldName, true);
            }
            //System.out.println(f.getName());
        }
    }

    /** Delete folder or file */
    public static boolean deleteFileOrFolder(String sPath) {
        boolean flag = false;
        File file = new File(sPath);
        if (!file.exists()) {
            return flag;
        } else {
            if (file.isFile())
                return deleteFile(sPath);
            else
                return deleteDirectory(sPath);

        }
    }

    public static boolean deleteFile(String sPath) {
        boolean flag = false;
        File file = new File(sPath);
        if (file.isFile() && file.exists()) {
            file.delete();
            flag = true;
        }
        return flag;
    }

    /** Delete directory and all childDirectory and files */
    public static boolean deleteDirectory(String sPath) {
        if (!sPath.endsWith(File.separator)) {
            sPath = sPath + File.separator;
        }
        File dirFile = new File(sPath);
        if (!dirFile.exists() || !dirFile.isDirectory()) {
            return false;
        }
        boolean 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;
        }
    }
分享到:
评论

相关推荐

    用python写代码删除文件 pyinstaller -F -w delete-folder11-all-files.py

    记得输入pyinstaller -F -w delete_folder11_all_files.py 就可以生成exe执行文件了。 用python写代码删除文件, 记得输入pyinstaller -F -w delete_folder11_all_files.py 就可以生成exe执行文件了。 用python写...

    Delete the specified folder

    在这个场景下,"Delete the specified folder" 指的是通过编程或脚本方式删除特定路径下的文件夹。VC(Visual C++)是这个上下文中可能使用的编程环境,因为它是一个广泛用于Windows平台的C++开发工具。 删除文件夹...

    kill_folder 专杀

    "kill_folder 专杀"工具是一款专门针对名为"kill_folder"的文件病毒设计的安全软件。在深入了解这个工具之前,我们首先要理解什么是文件病毒以及它如何影响计算机系统。 文件病毒是一种恶意软件,它会附着在可执行...

    windows-folder-remark-master.zip

    windows-folder-remark-master.zip windows-folder-remark-master.zip windows-folder-remark-master.zip windows-folder-remark-master.zip windows-folder-remark-master.zip windows-folder-remark-master.zip ...

    Windows删除无线嵌套文件夹或错误路径文件

    def delete_folder(path): if os.path.exists(path): for file in os.listdir(path): file_path = os.path.join(path,file) if os.path.isdir(file_path): delete_folder(file_path) else: os.remove(file_path) ...

    folder-lock6 注册码

    Folder Lock 是一款非常流行的文件加密和隐私保护软件,它可以帮助用户轻松地锁定、隐藏或加密其重要的文件、照片、视频等个人数据。这款软件适用于多种操作系统,包括 Windows 和 macOS,并且具有高度的安全性和...

    Folder Size 2.1 Folder Size 2.1

    Test Folder Size 2.1 Folder Size 2.1

    FORM开发FOLDER参考实例

    在Oracle Forms开发中,"FORM开发FOLDER参考实例"是一个教程,旨在帮助开发者实现类似Oracle标准Folder的功能。这个过程涉及到创建新的Form,添加必要的对象,调整触发器和程序单元,以及集成Oracle标准Form中的组件...

    New folder (1)_newfolder_NEW_

    【标题】"New folder (1)_newfolder_NEW_" 暗示了这是一个新的文件夹,可能包含了一系列经过整理或更新的文件。在IT领域中,文件夹命名通常是为了便于管理和识别,尤其是当它带有"(1)"这样的后缀时,这可能是原始...

    FORM 开发中FOLDER(文件夹)的使用

    FORM 开发中的 FOLDER(文件夹)功能详解 在 Oracle FormBuilder 中,FOLDER(文件夹)功能是一个非常重要的组件,它能够帮助开发者快速地创建和管理文件夹结构。在这个教程中,我们将详细地介绍 FOLDER 功能的开发...

    文件夹病毒专杀工具 kill_folder

    文件夹病毒专杀工具 kill_folder 文件夹病毒专杀工具 kill_folder

    文件夹病毒专杀kill_folder2.12最新版

    《文件夹病毒专杀工具Kill_Folder 2.12详解》 在信息化时代,电脑病毒无处不在,其中文件夹病毒尤其让人头疼。这类病毒会感染用户的重要文件夹,导致数据丢失或系统瘫痪。为此,专业防病毒软件Kill_Folder应运而生...

    ORACLE_EBS_FOLDER入門與提高.pdf

    ### Oracle E-Business Suite (EBS) Folder 功能入门与提高 #### 一、Folder功能概述 Oracle E-Business Suite (EBS) 的Folder功能是一种强大的工具,它允许用户自定义视图,以便更好地管理和展示数据。Folder可以...

    FolderSniffer数据恢复专家

    FolderSniffer是一款强大的数据恢复工具,专为那些不小心丢失硬盘数据、误删文件或遭遇格式化情况的用户提供帮助。在日常计算机使用过程中,由于各种原因,我们可能会误操作导致重要数据丢失,这时FolderSniffer就能...

    winmend folder hidden密码忘记找回文件的方法

    标签"winmend folder hidden"进一步强调了这个问题是关于该特定软件的。 根据提供的部分内容,以下是两种找回文件的方法: 1. 使用360系统重装大师: - 首先,下载并刻录360系统重装大师到U盘。 - 重启电脑,...

    FolderSniffer3.51文件夹嗅探器

    FolderSniffer3.51是一款高效实用的文件夹嗅探工具,专为用户设计,用于在计算机系统中快速定位和追踪文件活动。它以其小巧的体积和强大的功能赢得了用户的广泛好评,尤其对于需要实时监控文件操作的人来说,Folder...

    FolderSniffer文件夹嗅探器

    FolderSniffer是一款强大的文件夹监控工具,主要用于实时追踪和记录文件和文件夹的修改、创建、删除等操作。它的设计目标是帮助用户了解系统中文件活动的详细情况,尤其适用于软件开发者、系统管理员以及需要密切...

    cloudbees-folder.hpi

    Jenkins首次安装选择推荐插件时出现“: No such plugin: cloudbees-folder” 解决方案 1、下载附件资源:cloudbees-folder .hpi 2、将cloudbees-folder .hpi放在 tomcat 的 /webapps/jenkins/WEB-INF/detached-...

    folder size 显示文件夹大小

    "folder size 显示文件夹大小"这个主题就是关于如何查看和理解文件夹占用磁盘空间的具体情况。下面我们将深入探讨这一知识点。 首先,Windows操作系统本身并不提供直接查看文件夹大小的功能,但用户可以通过一些第...

    kill_folder1.9

    "Kill_Folder1.9"是一款专为U盘设计的杀毒工具,旨在帮助用户清除U盘中的病毒和恶意软件,保障数据安全。这个压缩包文件"kill_folder1.9.rar"包含了主要的执行程序"kill_folder.exe",它是整个软件的核心部分。 一...

Global site tag (gtag.js) - Google Analytics