Hallo!
Ich möchte Java-Objekte mit Hilfe der Schnittstelle
http://www.oracle.com/technetwork/articles/java/javaserial-1536170.html
Durch diesen Artikel habe ich erfahren, dass man aushebeln kann, indem man seine eigenen Lese- und Schreibemethoden in der zu serialierenden Klasse implementiert:
http://stackoverflow.com/questions/7290777/java-custom-serialization
Über diesen Post habe ich so in etwa eine Ahnung bekommen, was in diesen Methoden passieren soll. So würde ich meine Werte als
Dazu hat der InputStream z.B. eine
Was ich nicht ganz verstehe, wie sieht das mit der Reihenfolge aus? Ich kann ja nix x-beliebig nacheinander
Ich habe leider keinerlei Ahnung davon, hoffe, ihr könnt mir weiterhelfen!
LG
GenerationLost
Ich möchte Java-Objekte mit Hilfe der Schnittstelle
Serializable
speichern und laden können. Das Problem ist, dass diese Objekte JavaFX Properties als Attribute besitzen, welche über Serializable eine Exception beim Schreiben werfen.http://www.oracle.com/technetwork/articles/java/javaserial-1536170.html
Durch diesen Artikel habe ich erfahren, dass man aushebeln kann, indem man seine eigenen Lese- und Schreibemethoden in der zu serialierenden Klasse implementiert:
Java:
private void writeObject(ObjectOutputStream out) throws IOException
{
out.defaultWriteObject();
}
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
{
// our "pseudo-constructor"
in.defaultReadObject();
// now we are a "live" object again, so let's run rebuild and start
}
http://stackoverflow.com/questions/7290777/java-custom-serialization
Über diesen Post habe ich so in etwa eine Ahnung bekommen, was in diesen Methoden passieren soll. So würde ich meine Werte als
int
speichern und beim Laden einfach in eine neue IntegerProperty
umwandeln.Dazu hat der InputStream z.B. eine
readInt()
Methode.Was ich nicht ganz verstehe, wie sieht das mit der Reihenfolge aus? Ich kann ja nix x-beliebig nacheinander
readInt()
auf dem InputStream aufrufen. Es sind ja auch nicht nur Integer, sonder auch Doubles. Gibt es da eine Reihenfolge die ich einhalten muss? So einlesen wie geschrieben wurde, oder "von hinten" anfangen?Ich habe leider keinerlei Ahnung davon, hoffe, ihr könnt mir weiterhelfen!
LG
GenerationLost
Zuletzt bearbeitet von einem Moderator: