Błąd zapisu/odczytu LISTY do pliku

0

Witam. Poniżej przesyłam moje metody do zapisu i odczytu listy do pliku. Niestety pojawiają się błędy załączam w screenie.

//blad pliku
    public void save()
    {
        try {
            ObjectOutputStream outputStream = new ObjectOutputStream(new FileOutputStream("pracownicy.txt"));
            outputStream.writeObject(listPracownikow);
            outputStream.close();
        } catch (IOException ex) {
            System.out.println("Wystąpił błąd zapisu");
            ex.printStackTrace();
        }
    }
    
    //blad pliku
    public void open()
    {
        try {
            ObjectInputStream inputStream = new ObjectInputStream(new FileInputStream("pracownicy.txt"));
            listPracownikow = (List<Pracownik>) inputStream.readObject();
            inputStream.close();
        } catch (Exception ex) {
            System.out.println("Wystąpił błąd odczytu");
            ex.printStackTrace();
        }
    }
    //wyświetla się poprawnie zawartość listy
    public void Display()
    {
        for (Pracownik student : listPracownikow) {
              System.out.println(student);
        }
    }
0

na pierwszy rzut oka wyglada, ze twoja klasa Pracownik nie implementuje interfejsu Serializable

0
  1. NIE używaj javowej serializacji obiektów bo to rak i to jeszcze dość niebezpieczny
  2. Serializuj do XMLa czy JSONa, za pomocą jacksonowego ObjectMappera to jest jedna linijka żeby zamienić obiekt w jsona.
  3. Jeśli musisz, to taka klasa musi być Serializable

1 użytkowników online, w tym zalogowanych: 0, gości: 1