Título: [Solucionado] comprobar si el fichero existe, variable tipo string Publicado por: tonilogar en 8 Junio 2011, 23:28 pm En esta aplicación, entro un dato con getline y utilizo el tipo de variable string por si el nombre tiene espacios.
Hay alguna forma de detectar si el fichero existe o no, con una variable del tipo string. Parecido a como se hace con el variables de tipo char*. Código
O con el open de ifstream Un saludo a todos y gracias por vuestra ayuda. Título: Re: comprobar si el fichero existe, variable tipo string Publicado por: Don Pollo en 14 Junio 2011, 23:31 pm No creo que haya forma de saber si el fichero se ha abierto bien con una variable string pero, tengo una duda de tu código: por qué pones endl's antes y después del cin? si lo que este comando haga no lo muestra por pantalla
Título: Re: comprobar si el fichero existe, variable tipo string Publicado por: fantasma306 en 15 Junio 2011, 11:33 am Si tu archivo es binario, ya no se trata de ifstream ni de ofstream. solo tienes que poner fstream:
fstream fich (Imagen, ios::in | ios::binary); Lo que puedes hacer es intentar abrir el archivo en lectura, y despues comprobar si esta abierto. (si no esta abierto no existe y si esta abierto no te olvides de cerrarlo) Código
si el codigo es solo para windows hecha un vistazo a esto: http://www.latindevelopers.com/forum/verificar-si-un-archivo-existe-t3102.html saludos Título: Re: comprobar si el fichero existe, variable tipo string Publicado por: Died en 15 Junio 2011, 17:06 pm Código
Esperemos que lo entiendas :) Un saludo. Sagrini Título: Re: comprobar si el fichero existe, variable tipo string Publicado por: tonilogar en 16 Junio 2011, 00:45 am El cout << endl; detras del cin es porque despues se imprime la variable Imagen y lo veo mas claro.
Pero bueno como comentas en el código final no sirve para nada. En principio lo he solucionado con el fstream Código Fantasma306 probare como me indicas, para ver que solución es la que mas me conviene. En principio es para windows, pero en casa utilizo linux y prefiero que el código sea portable. Pues como de primeras no entiendo mucho Died, pero me lo mirare con detenimiento (soy un novato). Si veis alguna pega sobre la solución que he utilizado no dejéis de criticar todo lo criticable. Un saludo y gracias por vuestro tiempo. Título: Re: comprobar si el fichero existe, variable tipo string Publicado por: fantasma306 en 16 Junio 2011, 13:26 pm bueno solo decirte que no hace falta que pongas
Código: std:: tampoco hace falta que hagas esto: Código: const char *ImagenChar=Imagen.c_str(); Código: fstream fichero(Imagen.c_str(), ifstream::in); una ultima cosa, no te olvides de cerrar el archivo en el ELSE ;) saludos! Título: Re: comprobar si el fichero existe, variable tipo string Publicado por: tonilogar en 16 Junio 2011, 23:59 pm Gracias por tu ayuda fantasma306, este fin de semana intentare limpiar el código.
Título: Re: comprobar si el fichero existe, variable tipo string Publicado por: tonilogar en 23 Junio 2011, 16:48 pm Gracias por tu ayuda fantasma306.
Al final he seguido todas tus indicaciones, utilizando el open y sin crear una variable nueva. Así queda el código: Código
Un saludo. |