===== Serializace objektů do souboru =====
- Vytvořte třídu Clovek, obsahující položky jméno a příjmení. Tato třída bude mít konstruktor pro vytvoření nového člověka parametry zadaného jména a příjmení.
Vytvořte třídu SeznamLidi, která bude reprezentovat seznam ("databázi") lidí.
Napište metody pro uložení a načtení seznamu do souboru a ze souboru. Zdrojový kód zápisu může vypadat podobně jako:
SeznamZaznamu object = ...;
// Seznam záznamů musí být inicializován.
// Pokud bude ukládání metodou třídy SeznamZaznamu,
// dosaďte místo ... this.
// SeznamZaznamu musí implementovat rozhraní Seralizable
try {
// Serializace do souboru
ObjectOutput out = new ObjectOutputStream(
new FileOutputStream("mujseznam.dat"));
// jméno souboru
out.writeObject(object);
out.close(); // a je to. Jednoduché, že?
} catch (IOException e) {
System.out.println("Chyba při zápisu souboru : "+e);
}
A načtení bude podobné tomuto kódu:
try {
// Načtení ze souboru
File file = new File("mujseznam.dat");
ObjectInputStream in = new ObjectInputStream(
new FileInputStream(file));
// Deserializace objektu
SeznamZaznamu sz = (SeznamZaznamu) in.readObject();
//přečtu objekt a pokusím se jej přetypovat
in.close();
} catch (ClassNotFoundException e) {
System.out.println("Nemohu najít definici třídy: "+e);
} catch (IOException e) {
System.out.println("Chyba při čtení souboru : "+e);
}