JAVA,我无法删除空文件夹
问题描述:
嗨,你能帮助我吗?我有一个空文件夹。 我宣布这个文件夹类似这样的JAVA,我无法删除空文件夹
File slozka= new File ("M:/ShareDirs_KSP/RDM_Debtors/DMS_PROD/ERMS/IN/42232471/");
后,我想删除此文件夹。但有些错误
slozka.delete();
文件夹未被删除。
但是,我可以用这段代码删除一些文件夹。 有什么想法? Thanx
答
Java将无法看到这个Mapped
目录 - 这是一个基于Windows用户名的Windows事物。
如果您尝试使用UNC文件路径并拥有权限,那么您应该可以删除。
答
也许它会帮你:
FileUtils.deleteDirectory(dir);
答
在Java中,删除目录仅适用于空目录是可能的。 2种可能的原因:
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());
}
这一个会删除你的文件夹,即使非空,没有烦恼(除外,当该目录是由OS锁定)。
请[不要再使用'File'类](http://java7fs.wikia.com/wiki/Why_File_sucks)。它已经过时并且没有信息。改为使用['Files'](http://docs.oracle.com/javase/7/docs/api/java/nio/file/Files.html)类。它会给你更多关于它失败原因的信息(阅读链接)。 – RealSkeptic