Wczytywanie danych z pliku

Wczytywanie danych z pliku
GR
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 13
0

Witam serdecznie.
Posiadam plik tekstowy "wyniki.txt", w którym w każdej linijce mam podane 3 parametry, string oraz dwa inty. Napisałem funkcję, która powinna pobierać dane z tego pliku oraz wyświetlać je w konsoli. Niestety coś idzie mi nie tak. Zamiast pobierać mi parametrów z każdej linijki do 3 osobnych zmiennych, pobiera je tylko do pierwszego stringa. A po drugie pętla nie przerywa się po zakończeniu pliku, ale idzie w nieskończoność. Co może być nie tak?

Kopiuj
 bool wczytajPlik(string plikWyniki)
{
    ifstream wyniki;
    wyniki.open( plikWyniki.c_str() );
    if( !wyniki.good() )
         return false;
    
    while( true )
    {
        string imie;
		int pkt;
        int lvl;
        wyniki >> imie >> pkt >> lvl;
        if( wyniki.good() )
            cout << imie << pkt << lvl;
        else
             break;
        
    }
	return true;
}
_13th_Dragon
  • Rejestracja: dni
  • Ostatnio: dni
1
Kopiuj
bool wczytajPlik(string plikWyniki)
  {
   ifstream wyniki(plikWyniki.c_str());
   if(!wyniki) return false;
   string imie;
   int pkt,lvl;
   while(wyniki>>imie>>pkt>>lvl) cout<<imie<<"\t"<<pkt<<"\t"<<lvl;
   return true;
  }
GR
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 13
0

Dzięki, mistrzu ;) Działa i przypisuje tak jak powinno.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.