Ver Mensaje Individual
  #3 (permalink)  
Antiguo 07/11/2011, 15:39
gorystyle
 
Fecha de Ingreso: enero-2011
Ubicación: Venezuela, Táchira
Mensajes: 96
Antigüedad: 14 años, 1 mes
Puntos: 10
Respuesta: Duda con archivos de texto

Hola gracias por responder, mira tengo algo parecido:

Código C++:
Ver original
  1. char linea[10];
  2.     ifstream lee;
  3.     lee.open("votantes.txt");
  4.     if(lee.good()){
  5.         while(!lee.eof()){
  6.             lee >> linea;
  7.             if(strcmp(linea,(edCedula->Text).c_str())==0){
  8.                 MessageDlg("Error, esta persona ya voto!", mtError, TMsgDlgButtons() << mbOK, 0 );
  9.                 edCedula->Clear();
  10.             }else{
  11.                 votante_nuevo();
  12.                 break;
  13.             }
  14.         }
  15.         lee.close();
  16.     }else{
  17.         MessageDlg("Error, No se pudo abrir el archivo!", mtError, TMsgDlgButtons() << mbOK, 0 );
  18.     }

estoy usando Builder C++ 6 para hacerlo en modo grafico, si te fijas en el ELSE de la comparacion llamo a una funcion votante_nuevo();

la cual es esta:

Código C++:
Ver original
  1. ofstream escr;
  2.     escr.open ("votantes.txt", ios::app);
  3.     escr << edCedula->Text.c_str() << "\n";
  4.     escr.close();
  5.  
  6.     MessageDlg("Votante aprobado!",mtInformation, TMsgDlgButtons() << mbOK, 0);
  7.     edCedula->Clear();

el problema es que al agregar el 2do votante me manda 2 mensajes votante aprobado! en el 3 votante me manda 3 mensajes y asi sucesivamente :/ y no compara todas las lineas solo la primera linea es la que esta comparando si existe o no