Buenas,
Estoy intentando sobre-escribir los datos de un archivo (para modificarlo) pero me salta error por que no está definido el archivo pero lo tengo encontrado, acá el código:
Me dice que el archivo no está declarado.
(http://i.imgur.com/RXQDRTr.png)
ifstream fe(datname);
if(fe.good()){
// Se muestra el contenido
while(!fe.eof())
{
char c = fe.get();
str += c;
if(c == '\n') {
cout << str;
str = "";
}
}
cout << "\n?Que desea hacer?" << endl;
cin >> hacerOpcion;
if(hacerOpcion == "modificar"){
cout << "Modificando archivo..." << endl;
ifstream fe(datname);
if(fe.good()){
getline(cin, empresaDos);
cout << "Empresa: ";
getline(cin, empresaDos);
cout << "Edad: ";
cin >> edadDos;
empresaDos = "Empresa: " + empresaDos;
edadDos = "Edad: " + edadDos;
cin.ignore(2, '\n');
file.write(empresaDos.c_str(), empresaDos.size());
file << endl;
file << endl;
file.write(edadDos.c_str(), edadDos.size());
file.close();
}
}
else{
cout << "La opcion seleccionada no existe." << endl;
}
}
else{
cout << "El archivo no ha sido encontrado." << endl;
}
Intento sustituir el texto predefinido por el nuevo, pero no encuentra el archivo aunque lo tenga definido ifstream fe(datname);
Si me pueden echar una ayudita lo agradecería.
Saludos.
Pon la línea de código donde se define "file". File la usas en las líneas 36 37 38 39 y 41 pero en el code que pusiste no vi que lo declararas.
Quisiste decir "fe"?
PD: Ir preguntando para cada error no es una buena manera de aprender... Si encuentras un error mira tu code y fíjate un poco, no seas vago.
Cita de: Stakewinner00 en 16 Mayo 2015, 11:55 AM
Pon la línea de código donde se define "file". File la usas en las líneas 36 37 38 39 y 41 pero en el code que pusiste no vi que lo declararas.
Quisiste decir "fe"?
PD: Ir preguntando para cada error no es una buena manera de aprender... Si encuentras un error mira tu code y fíjate un poco, no seas vago.
Gracias, y es como bien dices es mejor probar varias cosas.
Al final era un error muy tonto.
En vez de file era fe.
fe.write(empresaDos.c_str(), empresaDos.size());
fe << endl;
fe << endl;
fe << edadDos << endl;
Y usar ofstream.
Gracias.
Saludos.