Ich habe ein bestimmtes Stück Code verwendet, um Dateien aus einem Ordner zu löschen, aber es erweist sich als sehr problematisch, weil ich vielleicht vergessen habe, ein oder zwei InputStream zu schließen. Der Code, den ich habe, ist so groß, dass ich nicht alle Inputstreams sehen kann, die ich nicht geschlossen habe. Gibt es eine Möglichkeit, Dateien zu löschen, unabhängig davon, ob ein OpenStream geöffnet ist oder nicht?Erzwingen Löschen aller Dateien aus einem Ordner
Dies ist das Stück des Codes, den ich verwendet habe;
File fin = new File("C:/ABC Statements final/");
File[] finlist = fin.listFiles();
for (int n = 0; n < finlist.length; n++) {
if (finlist[n].isFile()) {
System.gc();
Thread.sleep(2000);
finlist[n].delete();
}
}
Ich habe den Code bearbeitet. Diese Version funktioniert.
Ich würde vorschlagen, dass die kurze Antwort ist nein. Du solltest besser auf deine Streams aufpassen. – MadProgrammer
Dann sollte ich sagen, dass ich jeden Inpustraum durchgegangen bin. Es gibt im Code und ich habe die ganze Menge von ihnen geschlossen. Aber ich habe immer noch den gleichen Fehler – ErrorNotFoundException
2 Gedanken. Einige, wo eine Datei geöffnet ist und/oder ein Berechtigungsproblem vorliegt – MadProgrammer