package javacodebook.io.serialize; import java.io.*; public class Buch implements java.io.Serializable { private String titel; private String autor; private String verlag; private int seitenzahl; public Buch(String titel, String autor, String verlag, int seitenzahl) { this.titel = titel; this.autor = autor; this.verlag = verlag; this.seitenzahl = seitenzahl; } public String getTitel() { return titel; } public String getAutor() { return autor; } public String getVerlag() { return verlag; } public int getSeitenzahl() { return seitenzahl; } } --- Neue Klasse --- package javacodebook.io.serialize; import java.io.*; public class ReadData { public static void main(String[] args) throws Exception { //Ein neues Buch-Objekt erzeugen, indem die Daten wieder eingelesen werden ObjectInputStream in = new ObjectInputStream(new FileInputStream("c:\\buch.ser")); Buch buch2 = (Buch)in.readObject(); in.close(); System.out.println("Buch2 hat jetzt die Daten von Buch1:"); System.out.println("Titel: " + buch2.getTitel()); System.out.println("Autor: " + buch2.getAutor()); System.out.println("Verlag: " + buch2.getVerlag()); System.out.println("Seitenzahl: " + buch2.getSeitenzahl()); //Auch ein ganzes Array mit Buch-Objekten kann leicht wieder eingelesen werden in = new ObjectInputStream(new FileInputStream("c:\\buecher.ser")); Buch[] buecher = (Buch[])in.readObject(); System.out.println(); System.out.println("Die eingelesene Bücherliste enthält die Bücher:"); for(int i = 0; i < buecher.length; i++) { System.out.println("Titel: " + buecher[i].getTitel()); System.out.println("Autor: " + buecher[i].getAutor()); System.out.println("Verlag: " + buecher[i].getVerlag()); System.out.println("Seitenzahl: " + buecher[i].getSeitenzahl()); System.out.println(); } } } --- Neue Klasse --- package javacodebook.io.serialize; import java.io.*; public class WriteData { public static void main(String[] args) throws Exception { //Ein Objekt der Klasse Buch erzeugen Buch buch1 = new Buch("Der Medicus", "Noah Gordon", "Knaur", 523); //Das Buch serialisieren ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream("c:\\buch.ser")); out.writeObject(buch1); out.close(); Buch[] buecher = new Buch[] { new Buch("Per Anhalter durch die Galaxis", "Douglas Adams", "Heyne", 42), new Buch("Das Restaurant am Ende des Universums", "Douglas Adams", "Heyne", 245), new Buch("Das Parfüm", "Patrick Süskind", "K.A.", 324) }; out = new ObjectOutputStream(new FileOutputStream("c:\\buecher.ser")); out.writeObject(buecher); out.close(); } }