Hola gracias por responder, mira tengo algo parecido:
Código C++:
Ver originalchar linea[10];
ifstream lee;
lee.open("votantes.txt");
if(lee.good()){
while(!lee.eof()){
lee >> linea;
if(strcmp(linea
,(edCedula
->Text
).
c_str())==0){ MessageDlg("Error, esta persona ya voto!", mtError, TMsgDlgButtons() << mbOK, 0 );
edCedula->Clear();
}else{
votante_nuevo();
break;
}
}
lee.close();
}else{
MessageDlg("Error, No se pudo abrir el archivo!", mtError, TMsgDlgButtons() << mbOK, 0 );
}
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 originalofstream escr;
escr.open ("votantes.txt", ios::app);
escr << edCedula->Text.c_str() << "\n";
escr.close();
MessageDlg("Votante aprobado!",mtInformation, TMsgDlgButtons() << mbOK, 0);
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