【问题标题】: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);