【问题标题】:JAVA , i can´t delete empty folderJAVA,我不能删除空文件夹
【发布时间】:2016-02-26 08:37:42
【问题描述】:

您好,您能帮帮我吗?我有一个空文件夹。 我这样声明这个文件夹

 File slozka= new File ("M:/ShareDirs_KSP/RDM_Debtors/DMS_PROD/ERMS/IN/42232471/");

之后我想删除这个文件夹。但是有问题

slozka.delete();

文件夹未被删除。

但是,我可以使用此代码删除一些文件夹。 任何的想法? 谢谢

【问题讨论】:

标签: java file filesystems directory


【解决方案1】:

Java 将无法看到这个Mapped 目录 - 这是一个基于您的 Windows 用户名的 Windows 事物。

如果您尝试使用 UNC 文件路径并且有权限,那么您应该可以删除。

【讨论】:

    【解决方案2】:

    在 Java 中,只有空目录才可以删除目录。这里有两个可能的原因:

    1.目录被操作系统锁定; 2. 目录不为空

    案例2的删除方法:

    /**
     * Force deletion of directory
     * @param path
     * @return
     */
    static public boolean deleteDirectory(File path) {
        if (path.exists()) {
            File[] files = path.listFiles();
            for (int i = 0; i < files.length; i++) {
                if (files[i].isDirectory()) {
                    deleteDirectory(files[i]);
                } else {
                    files[i].delete();
                }
            }
        }
        return (path.delete());
    }
    

    这个会删除你的文件夹,即使不是空的,也不会麻烦(除非这个目录被操作系统锁定)。

    【讨论】:

      【解决方案3】:

      也许对你有帮助:

      FileUtils.deleteDirectory(dir);
      

      【讨论】:

        猜你喜欢
        • 2020-07-23
        • 2014-11-18
        • 2022-10-17
        • 1970-01-01
        • 2018-01-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多