Hallo,
ich benutze ein JPanel mit diversen RadioButtons und Textfeldern zur Konfiguartion eines Spiels.
Aufrufreihenfolge:
Main -> klick auf neues Spiel -> ConfigPanel öffnet sich -> EIngaben -> OKButton -> Los gehts.
Das ConfigPanel soll bei jedem Neustart aufgehen und die zuletzt eingestellten Werte wieder anzeigen,. sodass man nicht alles neu Selektieren muss.
Ich dachte ich verwende dazu einen XMLEn/DEcoder.
Nun weiß ich aber nicht, wie ich das Panel Encodieren soll.
Das Ende des ConfigPanel Construktors sieht so aus:
Meine EncodierMethode:
Und nun die alles entscheidende Frage..... WO lese ich nun die Daten wieder ein
Und geht das überhaupt so, oder sollte man das Problem ganz anders angehen?
Gruß Screaper
ich benutze ein JPanel mit diversen RadioButtons und Textfeldern zur Konfiguartion eines Spiels.
Aufrufreihenfolge:
Main -> klick auf neues Spiel -> ConfigPanel öffnet sich -> EIngaben -> OKButton -> Los gehts.
Das ConfigPanel soll bei jedem Neustart aufgehen und die zuletzt eingestellten Werte wieder anzeigen,. sodass man nicht alles neu Selektieren muss.
Ich dachte ich verwende dazu einen XMLEn/DEcoder.
Nun weiß ich aber nicht, wie ich das Panel Encodieren soll.
Das Ende des ConfigPanel Construktors sieht so aus:
Java:
try{
encodeToFile(this);
}
catch (FileNotFoundException ex){}
this.set Visible(false);
}
Meine EncodierMethode:
Java:
private void encodeToFile(ConfigDialog c)throws FileNotFoundException{
File configFile = new File("config.xml");
XMLEncoder x = new XMLEncoder(new FileOutputStream(configFile));
x.writeObject(c);
x.close();
}
Und nun die alles entscheidende Frage..... WO lese ich nun die Daten wieder ein
Java:
public ConfigDialog decodeFromFile() throws FileNotFoundException{
File configFile = new File("config.xml");
ConfigDialog c;
XMLDecoder d = new XMLDecoder (new FileInputStream(configFile));
c = (ConfigDialog)d.readObject();
d.close();
return c;
}
Und geht das überhaupt so, oder sollte man das Problem ganz anders angehen?
Gruß Screaper