I am using following to delete all files that exist in "abc" directory.
void delete() {
final File logDir = new File("abc");
final File[] listOfFiles = logDir.listFiles();
for(File file : listOfFiles) {
if(file.isFile()) {
file.delete();
}
}
} But nothing is get deleted.
Can you tell me where is the problem?
Ernest Friedman-Hill
,
author and iconoclast
staff
The code looks good; you need to trace it and see what it's doing, mostly to find out if it's actually finding the files you expect it to find. You could run it under a debugger, or just add a print statement:
The "getAbsolutePath()" should have printed the entire path from the root. Are those exactly the files you expected it to find?
If so, then the "false" means that the JVM tried and failed to deleted the files. It could be a permissions issue, or you could be on Windows, where deleting an open file will fail. Since you said this is a log file directory, maybe you're trying to delete log files that are currently in use? You can't do that on Windows; you have to make sure the files are closed, first.
Post by:autobot
Good heavens! What have you done! Here, try to fix it with this tiny ad:
a bit of art, as a gift, the permaculture playing cards