我试图删除文件很少的目录内容,但无法删除它。当我尝试方法 .delete()
时,它返回 false
,但是 .canWrite()
、.canRead()
方法返回代码的 true
。
我的文件在系统中的路径是:
E:\PROJECT01022012\.metadata\.plugins\org.eclipse.wst.server.core\tmp4\wtpwebapps\realmap\PHOTO\VFIN5CT5651842012\Inspirational-GravityHighRes.jpg
public static boolean removeDirectory(File directory){
if (directory.isDirectory())
{
File[] fls=directory.listFiles();
for (int i = 0; i < fls.length; i++) {
fls[i].delete();
}
}
}
最佳答案
如果文件已在其他地方打开过,则无法删除该文件。例如。在 Java 中,通过未关闭的 FileInputStream
或 FileOutputStream
,或者在最终用户的图像查看器/编辑器等 Java 上下文之外。
在 Java 端,确保您没有在任何地方打开该文件。确保该文件上的任何 FileInputStream
和 FileOutputStream
在使用后已在 finally
block 中进行 close()
处理。确保最终用户本身没有在某些图像查看器/编辑器中打开图片。
关于java - 无法删除带有图像的目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10652378/