I also ran into the same problem. But finally, I think I found a solution (maybe a workaround).
When deleting a directory, rename it and delete. Then, as a rule, create a directory using File.mkdirs() . This should work fine. I tested in my case. He works!!!
public static final void renameAndDelete(File fileOrDirectory) { File newFile = new File(fileOrDirectory.getParent() + File.separator + "_" + fileOrDirectory.getName()); fileOrDirectory.renameTo(newFile); delete(newFile); } public static final void delete(File fileOrDirectory) { if (fileOrDirectory.isDirectory()) for (File child : fileOrDirectory.listFiles()) delete(child); fileOrDirectory.delete(); }
source share