Skreedi Napisano 29 Grudnia 2012 Zgłoś Napisano 29 Grudnia 2012 Cześć, mam problem z moim programem, dokładnie chodzi o odczyt z pliku. Ogólnie działa - zapisuje do pliku i odczytuje z niego dane jednak przy odczycie ostatnia wyświetlana dana jest dublowana. Wygląda to tak jakby program zczytywał z pliku, a po skończeniu tego zczytywał jeszcze dane które zostały wpisane ostatnie. Jak się z tym uporać? Tutaj kod odczytu z mojego programu: fstream plik;plik.open("Produkty.txt");while (! plik.eof() ){ plik >> nazwaProduktu >> ilosc >> cena; cout << nazwaProduktu << " " << ilosc << " " << cena << endl; }plik.close(); Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...
kfgz Napisano 29 Grudnia 2012 Zgłoś Napisano 29 Grudnia 2012 Wklej CAŁY kod. Ta część co podałeś działa prawidłowo. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...
PMichalak Napisano 30 Grudnia 2012 Zgłoś Napisano 30 Grudnia 2012 (edytowane) Spróbuj tak: fstream plik;plik.open("Produkty.txt");while (!plik.eof()){ plik >> nazwaProduktu >> ilosc >> cena; if(plik.eof()) break; cout << nazwaProduktu << " " << ilosc << " " << cena << endl; }plik.close(); Edytowane 30 Grudnia 2012 przez PMichalak Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...
masters Napisano 8 Stycznia 2013 Zgłoś Napisano 8 Stycznia 2013 Jeżeli nie pomogło to daj jeszcze zrzut ekranu z tego pliku, do którego zapisujesz dane. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...