Я в начале написания парсера csv-файла для файла с 8000 идентификаторами.Во время работы, после того, как примерно половина идентификаторов прочитана и распечатана, консоль Clion начинает перезаписывать первые выходные данные, так что в конце работы первый идентификатор в моих выходах консолей будет 2626-м вместо первого.Что в моем коде отвечает за это?
При печати каждого прочитанного символа до запуска переключателя вывод завершен.Он также работает с меньшим количеством идентификаторов, когда я сокращаю количество в CSV до 6000.
int main() {
string buffer;
char zeichen;
ifstream eingabe;
eingabe.open("../lib/Daten.csv");
int zustand=0;//0=Token, 1=Werte
if(eingabe){
while(!eingabe.eof()) {
eingabe.get(zeichen);
//cout<<zeichen; // with only this it works
switch(zeichen){
case';':
if(zustand==0){
cout<<"Token: "<<buffer<<"; ";
}
else if(zustand==1){
cout<<"Wert: "<<buffer<<"; ";
}
buffer="";
break;
case'\n':
if(zustand==0){
zustand=1;
cout<<"Token: "<<buffer<<endl;
}
else if(zustand==1){
cout<<"Wert: "<<buffer<<endl;
}
buffer="";
break;
default:
buffer+=zeichen;
break;
}
}
}
eingabe.close();
return 0;
}