我正开始为大约8000个Ids的文件编写一个csv文件解析器。运行时,在读取并打印了大约一半的Id之后,Clion控制台开始覆盖第一个输出,以便在运行控制台时,第一个Id输出结束时是第2626个而不是第一个。我的代码中负责什么?
在开关启动之前打印每个读取的字符时,输出完成。当我将csv中的IDs缩短至6000左右时,它也可以使用较小的ID。
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;
}
答案 0 :(得分:0)
在评论中所有有帮助的人的回答。它似乎与Clion有关