Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: Dato Vagabundo en 1 Agosto 2016, 19:43 PM

Título: Problemas para abrir ficherosHola buenas, estoy empezando a tocar c++ y no puedo
Publicado por: Dato Vagabundo en 1 Agosto 2016, 19:43 PM
Hola buenas, estoy empezando a tocar c++ y no puedo abrir un fichero introduciendo yo el nombre del fichero por teclado. Tengo esto y no me funciona:

    char nomFichero[20];
    FILE *fich;

    cin>>nomFichero;
    fich=fopen(nomFichero,"r");
   
    if(fich==NULL)
    {
        cout<<"No existe"<<endl;
       
    }
Si alguien me puede echra una mano se lo agradeceria.
Gracias de antemano y un saludo.
Título: Re:
Publicado por: JavierScars en 1 Agosto 2016, 19:55 PM
El fichero existe? Y aparte de eso le estás dando la extensión del fichero junto con su nombre? Por ejemplo "fichero.txt" además recuerda que debe estar en la misma carpeta que el programa/proyecto que estas creando.

Enviado desde mi G630-U251 mediante Tapatalk
Título: Re: Problemas para abrir ficherosHola buenas, estoy empezando a tocar c++ y no puedo
Publicado por: class_OpenGL en 1 Agosto 2016, 20:17 PM
También debes recordar que si pasas una ruta alternativa, no tiene que tener espacios
Título: Re: Re: Problemas para abrir ficherosHola buenas, estoy empezando a tocar c++ y no puedo
Publicado por: JavierScars en 1 Agosto 2016, 20:32 PM
Cita de: class_OpenGL en  1 Agosto 2016, 20:17 PMTambién debes recordar que si pasas una ruta alternativa, no tiene que tener espacios
No se mucho sobre el manejo de rutas alternativas pero no se podría usar el "\ "  entre los espacios para lograr llegar a una ruta que los contiene? O por lo menos así funciona en la consola de linux, en windows creo que si acepta los espacios.

Enviado desde mi G630-U251 mediante Tapatalk
Título: Re: Problemas para abrir ficherosHola buenas, estoy empezando a tocar c++ y no puedo
Publicado por: class_OpenGL en 1 Agosto 2016, 20:42 PM
Lo malo de usar espacios es que el operador >> de std::cin solo recoge la primera palabra, por lo que si hay espacios, no recoge toda la dirección
Título: Re:
Publicado por: JavierScars en 1 Agosto 2016, 21:10 PM
Cierto... Pero con getline funcionaria, creo.

Enviado desde mi G630-U251 mediante Tapatalk
Título: Re: Problemas para abrir ficherosHola buenas, estoy empezando a tocar c++ y no puedo
Publicado por: Dato Vagabundo en 3 Agosto 2016, 18:37 PM
Muchas gracias!!!