我正在尝试从 .txt 文件中读取并将其写入 listBox(Windows 窗体应用程序)我想读取的是 double 类型,我不知道为什么,但是在数字上的点之后,它不再读取并将其转移到另一个变量!此外,它写了两次东西,就像它两次执行这个循环并显示相同的信息,但它不应该
这是我认为可能有错误的代码部分:
char empresam[11];
int tipom;
int codigom;
double valorm;
int Data_lev[5];
int Data_arm[5];
CData DActual;
int Data_actual[3];
bool mercadoria=false;
int precom;
Data_actual[0]=DActual.Rano();
Data_actual[1]=DActual.Rmes();
Data_actual[2]=DActual.Rdia();
//leitura do ficheiro
facturacao.peek();
while(!facturacao.eof()){
facturacao.getline(empresam, 11);
empresam[10]='\0';
facturacao >> tipom >> codigom;
facturacao>>Data_lev[0]>>Data_lev[1]>>Data_lev[2]>>Data_lev[3]>>Data_lev[4];
facturacao>>Data_arm[0]>>Data_arm[1]>>Data_arm[2]>>Data_arm[3]>>Data_arm[4];
facturacao >> valorm;
facturacao >>precom;
cin.ignore();
facturacao.peek();
if(Data_lev[0]==Data_actual[0] && Data_lev[1]==Data_actual[1] && Data_lev[2]==Data_actual[2]){
mercadoria=true;
ffacturacaod->listBox1->BeginUpdate();
ffacturacaod->listBox1->Items->Add ("Código de empresa");
//converter char* para string ^
String^ strempresa = gcnew String(empresam);
ffacturacaod->listBox1->Items->Add(strempresa);
ffacturacaod->listBox1->Items->Add("Códido de armazenamento");
ffacturacaod->listBox1->Items->Add(codigom);
ffacturacaod->listBox1->Items->Add("Mercadoria do tipo");
switch(tipom){
case 1: {ffacturacaod->listBox1->Items->Add("Contentor 12 x 2,3 m");break;};
case 2: {ffacturacaod->listBox1->Items->Add("Contentor 6 x 2,3 m");break;};
case 3: {ffacturacaod->listBox1->Items->Add("Palete 120 x 80 cm");break;};
case 4: {ffacturacaod->listBox1->Items->Add("Palete 60 x 80 cm");break;};
}
ffacturacaod->listBox1->Items->Add("Valor declarado");
ffacturacaod->listBox1->Items->Add(valorm);
ffacturacaod->listBox1->Items->Add( "Armazenado na data");
ffacturacaod->listBox1->Items->Add ("Data");
ffacturacaod->listBox1->Items->Add("Valor pago");
ffacturacaod->listBox1->Items->Add(precom);
ffacturacaod->listBox1->EndUpdate();
}
facturacao.close();