void wczytanie_z_pliku_ksiazek (char * nazwa, ksiazka *ksiazka)
{
fstream plik;
int i = licznik_linii(nazwa);
i = i/3; // ile lini jest w pliku
int x =0;
plik.open(nazwa);
if ( plik.is_open())
{
while (x < i)
{
getline(plik, ksiazka[i].autor_imie, '\n');
cin.sync();
cin.clear();
getline(plik, ksiazka[i].autor_nazwisko, '\n');
cin.sync();
cin.clear();
getline(plik, ksiazka[i].tytul, '\n');
cin.sync();
cin.clear();
plik >> ksiazka[i].naklad;
cin.sync();
cin.clear();
cout << "imie = " << ksiazka[i].autor_imie << " " << "Nazwisko = " << ksiazka[i].autor_nazwisko << '\n';
cout << ksiazka[i].tytul << '\n';
cout << ksiazka[i].naklad << '\n';
x++;
}
}
plik.close();
}
plik :
Henryk
Sienkiewicz
W pustyni i w puszczy
20
Imie
Nazwisko
Tytul jakis
70
I problem jest, że przy ponowny wejściu w pętle w buforze zostaje spacja, która przypisuje się do nastepnego imienia. :/
Jest ktoś w stanie pomóc?