我在写一个CSV文件解析器约8000 IDS文件的开始。在运行时,后一半左右的ID被读取并打印,在克利翁控制台开始重写第一输出,因此在我的控制台输出运行的第一个ID到底是第二千六百二十六而不是第一个。在我的代码是什么负责?
当打印每一个读字符设备启动前,输出完成。它还可以与IDS量较小,当我缩短在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;
}
通过在注释中的所有有用的人回答。这似乎是连接到克利翁