Serializace objektů do souboru

  1. 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
 
    // Serializace do souboru
    try (OutputStream fos = new FileOutputStream("mujseznam.dat");
         ObjectOutputStream out = new ObjectOutputStream(fos)) {
 
        out.writeObject(object);
        // 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:

    // Načtení ze souboru                              
    try (InputStream fis = new FileInputStream("mujseznam.dat");
         ObjectInputStream in = new ObjectInputStream(fis)) {
 
        // Deserializace objektu
        // přečtu objekt a pokusím se jej přetypovat
        SeznamZaznamu sz = (SeznamZaznamu) in.readObject(); 
 
    } 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);
    }

courses/b0b36pjv/tutorials/08/serializace.txt · Last modified: 2020/04/20 18:14 by zidekja2