`
louisling
  • 浏览: 141021 次
  • 性别: 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 folder under the specified path

    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 Size 2.1 Folder Size 2.1

    Test Folder Size 2.1 Folder Size 2.1

    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 ...

    kill_folder 专杀

    kill_folder 专杀文件病毒,特好用 kill_folder 专杀文件病毒,特好用

    FolderSniffer.exe

    FolderSniffer.exe FolderSniffer.exe

    Microsoft Private Folder 1.0

    Microsoft Private Folder 1.0又名我的密码箱是一款功能超群的加密软件,它界面友好,简单易用,采用先进的文件系统驱动技术及安全可靠的加密算法,真正意义上的实现了与 Windows文件系统的无缝集成,全面保证加密...

    硬盘文件大小查看对比工具(Folder Size) 3.4 绿色版 很好

    folder Size是最好的一个文件夹大小浏览工具了,可以拖入文件夹,操作方便 folder Size是一款用于系统硬盘查看对比的工具,它可以帮助你查看系统中的磁盘文件使用状态,同时支持显示每个磁盘的文件和文件夹所占用...

    New+Folder+(3)New+Folder+(3)New+Folder+(3)

    New+Folder+(3)New+Folder+(3)New+Folder+(3)New+Folder+(3)New+Folder+(3)New+Folder+(3)New+Folder+(3)New+Folder+(3)

    Folder lock v7.7.6.zip

    今天小编要给大家介绍一款专业的文件加密软件——Folder Lock 。Folder Lock 能用密码将您的任何文件、文件夹、驱动器和图片快速进行安全加密,加密速度飞快,被加密的文件不但是隐藏的,而且是无法删除的,软件使用...

    arm9 io driver source 2

    ARM9'S Driver for 1302 on linux

    FolderSize v2.5

    http://downloads.sourceforge.net/foldersize/FolderSize-2.5-x86.msi http://downloads.sourceforge.net/foldersize/FolderSize-2.5-x64.msi 需要说明一下,该软件目前不支持 Vista 和 Windows7,祝君好运!

    Private Folder-我的密码箱

    Microsoft Private Folder 1.0又名我的密码箱是一款功能超群的加密软件,它界面友好,简单易用,采用先进的文件系统驱动技术及安全可靠的加密算法,真正意义上的实现了与Windows文件系统的无缝集成,全面保证加密...

    folder-lock 7.2.2文件加密软件

    Folder Lock 是一个对所有数据的安全性需求的全套解决方案。它可以让你保持多种方式保护您的个人档案,在PC和便携式硬盘,并提供可选的备份在线存储受保护的文件 。Folder Lock 7安全工具的完美结合,让您加密备份您...

    09-水墨效果 folder

    After Effects影视特效实例教程 09-水墨效果 folder

    Folder Marker Home 4.2中文注册版.rar

    Folder Marker是一款文件夹标记软件,它可以给文件夹更改颜色或者图标,支持应用所选图标到所有文件夹,采用可分配方式,重装系统后标记仍然有效。按自己的要求更新文件夹后看上去更醒目,方便你平时的寻找。关于...

    folder_htt配置注册表

    说明: 许可 Windows 以显示 Web 查看模板和 (Folder.htt) 的自定义设置不具有与 Windows 注册 MD5 哈希。在这种情况下,您收到一条安全消息的 Web 视图模板或 $ 没有注册哈希值的自定义设置。如果您单击 是 安全...

    Advanced Folder Encryption 6.60

    Advanced Folder Encryption 6.60 Advanced Folder Encryption is an easy and fast program that allows you to protect passwords and encrypt data software for Windows. The program can encrypt, lock, and ...

Global site tag (gtag.js) - Google Analytics