无法从.txt读取并将其写入文本框

时间:2013-07-08 23:31:08

标签: c++ forms file textbox

我正在尝试从.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();

0 个答案:

没有答案