złe pobieranie wartości z pliku

0

witam,
program zapisuje do pliku nazwe klasy imie oraz ifnormacje. Rozdziela je od siebie ;;; wartości pobieram za pomocą getlina(), jednak podczas pobierania program się zwiesza.
Nie rozumiem dlaczego moje 3 getline() pobierają tylko jedną wartość na każde przejście pętli

    void readFromFile()
    {
        cleanClassList();
        fstream file;

        file.open("object.txt",ios::in|ios::out);
        string name,className,info,line;
        if(file.good())
        {
        while(true)
        {
            if(getline(file,className,file.widen(';;;'))){;}
            else{break;}

            if(getline(file,name,file.widen(';;;'))){;}
            else{break;}

            if(getline(file,info,file.widen(';;;'))){;}
            else{break;}
        addObject(className,name);
        modifyObject(name,info);

        }
        file.close();
        }

    }
 
0
';;;' 

To są trzy znaki, a nie jeden.

0

z jednym ; też nie działało tak samo z \t

0

ok już działa zapomniałem że znak \n tez uznaje za separator

0
Koń Rafał napisał(a):

z jednym ; też nie działało tak samo z \t

Jak dasz jeden średnik, a w pliku masz trzy razy, to odczytuje pierwszą wartość,
a pozostałe dwa razy nic do średnika.

1 użytkowników online, w tym zalogowanych: 0, gości: 1