Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: ZedGe en 12 Diciembre 2011, 02:15 am



Título: Duda sobre uso de Direcciones para ubicar archivos
Publicado por: ZedGe en 12 Diciembre 2011, 02:15 am
Tengo que ingresar un archivo por consola, abrirlo y trabajar dentro de el.


Como hago para que el archivo pueda estar en cualquier parte del computador y ser abierto igual solo ingresando la direccion?? y como lo puedo abrir?


Código:
FILE* ficheroEntrada;
printf("Dime el nombre del Archivo: ");
gets(nombre);
ficheroEntrada = fopen(nombre, "rb");

eso tengo para leerlo si esta en la carpeta de mi programa, como lo hago para buscarlo en otro lado, por ejemplo ingresando C:\Users\Usuario\Documents\CodeBlocks\Prueba.txt

buscar ese archivo y leerlo


Título: Re: Duda sobre uso de Direcciones para ubicar archivos
Publicado por: bdoX en 12 Diciembre 2011, 03:26 am
Se puede hacer de dos formas:

Código
  1. FILE* ficheroEntrada;
  2. char nombre[] = "C:\\Users\\Usuario\\Documents\\CodeBlocks\\Prueba.txt";
  3.  
  4. if ( (ficheroEntrada = fopen(nombre, "rb")) == NULL )
  5. {
  6.    printf ( "error al abrir el fichero\n" );
  7. }
  8. else
  9. {
  10.    /*puedes hacer la respectiva lectura*/
  11. }
  12.  

o tambien

Código
  1. FILE* ficheroEntrada;
  2. char nombre[] = "C:/Users/Usuario/Documents/CodeBlocks/Prueba.txt";
  3.  
  4. if ( (ficheroEntrada = fopen(nombre, "rb")) == NULL )
  5. {
  6.    printf ( "error al abrir el fichero\n" );
  7. }
  8. else
  9. {
  10.    /*puedes hacer la respectiva lectura*/
  11. }
  12.  


Título: Re: Duda sobre uso de Direcciones para ubicar archivos
Publicado por: ZedGe en 12 Diciembre 2011, 03:28 am
osea da = si se pone el nombre o la direccion lo abre de igual manera??


osea da igual si me archivo se llama Prueba.txt
 

o  "C:/Users/Usuario/Documents/CodeBlocks/Prueba.txt";

no se si me explico
 


Título: Re: Duda sobre uso de Direcciones para ubicar archivos
Publicado por: bdoX en 12 Diciembre 2011, 03:36 am
osea da = si se pone el nombre o la direccion lo abre de igual manera??


osea da igual si me archivo se llama Prueba.txt
 

o  "C:/Users/Usuario/Documents/CodeBlocks/Prueba.txt";

no se si me explico
 


si tu ejecutable se encuentra en el mismo directorio que el archivo Prueba.txt, no es necesario indicarle la ruta completa, en caso contrario, tienes que hacerlo de la manera que mencioné anteriormente. El if() que coloque, valida en el caso de que el archivo no existe, u ocurra por algun otro motivo.


Título: Re: Duda sobre uso de Direcciones para ubicar archivos
Publicado por: ZedGe en 12 Diciembre 2011, 04:39 am
Gracias lo probe me funciono perfecto =D