Jak zapisać obiekty do pliku?

0

Witam!
Mam 4 proste klasy (Kelner, Klient, Zamowienie, Posilek) z kilkoma polami. Chciałbym obiekt/wektor obiektów każdej z nich zapisać do osobnego pliku. Nie chcę korzystać z gotowych rozwiązań. Zrobiłem sobie klasę ObiektPlikZapiszWczytaj, której obiekt będzie odpowiadać za zapisywanie i ładowanie obiektów do/z pliku. Czy powinienem dodać do tej klasy ObiektPlikZapiszWczytaj metodę zapiszObjekt(Objekt o); (która będzie 4 razy przeciążona) tak żebym do tej metody mógł przekazać 4 różne typy obiektów? (każda z tych 4 klas ma różne w środku pola, które lekkko się różnią). Czy będzie do tego pomocny jakiś może wzorzec projektowy? Czy może do każdej z klas powinienem dodać metodę zwracającą poprawny obiekt dla zapisywacza tj. klasy ObiektPlikZapiszWczytaj np. Kelner kelner; DoZapisu doZapisu = kelner.doZapisu(); zapisywacz.zapisz(doZapisu); Podsumowując chodzi o rozwiązanie 4 klasy, które lekko się różnią i jakiś obiekt zapisywacz do tego -> pola każdej klasy zapisywacz zapisuje do pliku w tym samym formacie np. oddzielone ";".

0

zrob klase ktora bedzie zapisywac do pliku
zrob interfejs (klase czysto abstrakcyjna) a w niej metode saveToFile. Swoje klasy dziedzicz po tym interfejsie a niech klasa glowna przyjmuje jako typ ten interfejs (polimorfizm zadziala)

0

Jeżeli robisz poważny projekt to tylko i wyłącznie tak jak powiedział wyżej @fasadin
Zaś jeżeli to jest byle co byle jak to wystarczy że te twoje klasy (Kelner, Klient, Zamowienie, Posilek) będą pochodzić od klasy Savable
która ma dwie virtualne metody SaveToStream oraz LoadFromStream.

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