• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Java: wo ist der Fehler?

Drenius

Neues Mitglied
Hallo,
Ich habe ein Spiel mit einfachem Leveleditor geschrieben, welches mit
Code:
                file.delete();
                file = new File(System.getenv("APPDATA")+"/JaR/levels/"+filePath);
                FileWriter writer = new FileWriter(file, true);
    
                writer.write(convertedLevel[0]);
                writer.write(System.getProperty("line.separator"));
                writer.write(convertedLevel[1]);
                writer.write(System.getProperty("line.separator"));
usw Level speichert, zur not überschreibt.
Funktioniert auch super in der Eclipse Simulation, aber wenn ich das dann exportiere, überschreibt er die Dateien nicht mehr, sondern hängt das neue Level nurnoch in der Datei am Ende an.
Weiss jemand woran das liegt?
("file" wurde im code vorher schonmal genauso definiert, das ist vermutlich/hoffentlich nicht das Problem)
 
Zuletzt bearbeitet:
Hast du schonmal versucht den FileWriter mit false oder gar komplett ohne zweites Argument im Konstruktor zu erstellen? Der zweite Übergabeparamter steht nämlich für "append", also anhängen (kann in den Javadocs problemlos nachgelesen werden), vielleicht ändert sich ja dann was.

Ansonsten gibts es natürlich noch die (etwas umständliche) Möglichkeit, dass du die Datei immer erst löschst, wenn sie existiert, und dann neu schreibst.
 
Was den 2. Punkt angeht, dem gedanken nach sollte das mit file.delete() passieren.
Aber das erste - ähm ja das ist jetzt peinlich oder so...
Mal ausprobieren.

Edit: OMFG is das banal danke danke danke!
 
Zurück
Oben