[C++] Zapis i odczyt do pliku tekstowego wektora (wektorów) obiektów.
Ostatnio zmodyfikowano 2012-09-20 16:03
blunt Temat założony przez niniejszego użytkownika |
[C++] Zapis i odczyt do pliku tekstowego wektora (wektorów) obiektów. » 2012-09-19 14:01:15 Witam. Mam program, który jest taką mini wypożyczalnią DVD. Mam dwie klasy, w jednej przechowuje dane na temat filmu, w drugiej na temat klienterii. Ostatnią rzeczą jaką muszę dopracować to zapisywanie (i odczytywanie) tego wszystkiego do (z) pliku. Robiłem już coś podobnego w C i było o niebo łatwiej. Przekopałem internet, ale wszelkie poradniki dotyczą bardzo prostych operacji na plikach typu wstawienie zdania czy liczby, a nie tablicy obiektów... |
|
SeaMonster131 |
» 2012-09-19 14:58:49 ale wszelkie poradniki dotyczą bardzo prostych operacji na plikach typu wstawienie zdania czy liczby, a nie tablicy obiektów... |
A jak sobie wyobrażasz, żeby zapisać w pliku tablicę obiektów? No bo właśnie tak się robi, że za pomocą tekstu i liczb.. :) Obsługa plików |
|
blunt Temat założony przez niniejszego użytkownika |
» 2012-09-19 15:12:06 Może nie wyraziłem się zbyt jasno - wciąganie do pliku danych linia po lini nie będzie wyglądało zbyt elegancko przy takim programie ;_) |
|
DejaVu |
» 2012-09-19 19:35:24 Robisz serializator i deserializator obiektu, czyli: wyciągasz dane zapisane w obiekcie, które umożliwią jego późniejsze odtworzenie. Ustalasz sobie format zapisu (a tym samym odczytu danych) i w takiej postaci zapisujesz dane oraz odczytujesz je z pliku. Możesz próbować też użyć boosta (bo takie narzędzie tam jest), ale osobiście nie polecam tego modułu bo z mojego punktu widzenia jest po prostu napisany bezmyślnie. /edit: Nawet artykuł kiedyś nasmarowałem: Jak korzystać z boost::archive::binary_oarchive. |
|
blunt Temat założony przez niniejszego użytkownika |
» 2012-09-20 15:52:43 Nie wygląda to na lekką sprawę. Jak to jest, że w C, strukturę mogę w prosty sposób zapisać bez serializacji, a obiektu w C++ już nie? |
|
DejaVu |
» 2012-09-20 16:03:13 W C możesz zapisać strukturę bez serializacji pod warunkiem, że dane nie były alokowane dynamicznie. W C++ również możesz stworzyć strukturę w stylu C i wówczas również będzie to możliwe. W przypadku używania obiektów typu std::string, serializacji podlega wskaźnik na dane w pamięci, a nie dane, co oznacza w praktyce, że nie będziesz w stanie odczytać danych bo nigdzie nie zostaną one zapisane. |
|
« 1 » |