//serializacja obiektu
} catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { // zamykamy strumienie w finally try { if (oos != null) oos.close(); } catch (IOException e) {} try { if (fos != null) fos.close(); } catch (IOException e) {}
Odczytuje się tak samo, ale używa obiektów odczytu, a nie zapisu:
Account b = null; /* * Odczyt ze strumienia plikowego (ale może być dowolne) */ FileInputStream fis = null; ObjectInputStream ois = null; try { fis = new FileInputStream("test.ser"); //utworzenie strumienia wejściowego ois = new ObjectInputStream(fis); //utworzenie obiektu odczytującego obiekty ze strumienia
b = (Account) ois.readObject(); //deserializacja obiektu
} catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } catch (ClassNotFoundException e) { e.printStackTrace(); } finally { // zasoby zwalniamy w finally try { if (ois != null) ois.close(); } catch (IOException e) {} try { if (fis != null) fis.close(); } catch (IOException e) {}
Serializacja w języku Python Zapis klasy do zewnętrznego pliku oraz odczyt z pliku można zrealizować przy użyciu modułu „pickle”.
import pickle
class Animal: def __init__(self, attr="Horse"): self.attr = attr