Chcę zapisywać i wczytywać obiekty z pliku tekstowego.
Zapisuję:
ostream & operator << (ofstream & out, Magazyn & obiekt){
for(int i = 0; i < obiekt.magazyn.size(); i++){
out << obiekt.magazyn[i]->nazwa_tow<<" "<<obiekt.magazyn[i]->ilosc<<" "<<obiekt.magazyn[i]->cena_tow<<" "<<obiekt.magazyn[i]->indeks_tow << endl;
}
out << "#";
}
Koniec pliku oznaczam znakiem "#"
Teraz chcę wczytywać:
istream & operator >> (ifstream & in, Magazyn & obiekt){
int i = 0;
char znak;
while(true){
znak = getchar();
if(znak = '#'){
break;
}
else{
in >> obiekt.magazyn[i]->nazwa_tow ;
in >> obiekt.magazyn[i]->ilosc ;
in >> obiekt.magazyn[i]->indeks_tow ;
in >> obiekt.magazyn[i]->cena_tow;
i++;
}
}
}
Zapisywanie działa, sprawdzałem. Teraz - zdaję sobie sprawę że ten kod wczytywania jest bez sensu bo próbuję czytać znak z powietrza, ale o coś takiego mi chodzi, że wczytuję znak na początku linii, jeśli jest to hasztag, zrywam pętlę i kończę wczytywanie z pliku. Jak to zrobić?