Wie kann ich diesen Fehler in Filewriter umgehen?
-
19-09-2019 - |
Frage
Ich habe ein Problem bitte leite mich:)
Ich schreibe diese Methode:
public void createTempFile() throws Exception{
//CHTYPE & FINAL are Vector
File file = File.createTempFile("Temp", ".txt", new File(System.getProperty("user.dir")));
file.deleteOnExit();
FileWriter fw = new java.io.FileWriter(file);
for (String aContent : CHTYPE) fw.write(aContent + "\n");
fw.close();
traffic tr = new traffic(file);
for (int i = 0; i < tr.result.size(); i++)
FINAL.add(tr.result.get(i));
getEHRACT(); //Calculating in some integer & some Double
}
, wenn ich diese Methode in IDE (IntelliJ IDEA) laufe es richtig laufen und eine temporäre Datei löschen, nachdem diese Zeile
file.deleteOnExit();
aber wenn ich meine Anwendung als JAR-Datei mache diese Datei nicht gelöscht, bis ich meine Anwendung verlassen und einige Berechnungen ausführen nicht :( warum?
Bitte helfen Sie mir durch ...
Lösung
Ihre Datei erhält nicht, bis Sie Anwendung beendet gelöscht, weil ... das ist, was Sie ihm gesagt haben. Wenn Sie eine Datei sofort löschen möchten, können Sie dann ihre delete
Methode verwenden.
file.delete();
Andere Tipps
Die „OnExit“ Teil bedeutet „beim Austritt aus der VM“, nicht „beim Austritt aus meiner Funktion“ oder was auch immer
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow