[Resuelto] Una mano en este caso de ficheros

Iniciado por ++c, 24 Agosto 2014, 23:41 PM

0 Miembros y 1 Visitante están viendo este tema.

++c

Hola amigos tengo un problema con este código que estoy creando que trata sobre ficheros. Tengo creados varios ficheros en txt dentro del proyecto donde estoy construyendo el código pero no me permite abrirlo.

No se que estoy haciendo mal, gracias por su ayuda.


#include <stdio.h>
#include <stdlib.h>
#define N 25

int main(){

   FILE *fichero;
   char name[40],cadena[100];
   int contador=0;

   /* Esta parte de codigo verifico la existencia del fichero para posteriormente ser leído*/
   printf("\nIntroduzca nombre de fichero, tendra 3 oportunidades\n");
   printf("_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n\n");
   do{
       printf("-->");
       gets(name);
       if((fichero=fopen(name,"r"))!=NULL){
           printf("Fichero abierto correctamente!!\n");
           printf("_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _\n\n");

      }
      else{
           printf("Fichero no encontrado\n");
           contador++;
               if(contador==3)
                   exit(1);
       }
      printf("\n");
   }while(fichero==NULL);
   /* Aqui trato de ir leyendo el fichero de 25 en 25 lineas */
   do{
           for(contador=0;contador<N;contador++){
                   fgets(cadena,100,fichero);
                       if(!feof(fichero))
                               puts(cadena);
           }
           getchar();
   }while(!feof(fichero));
   fclose(fichero);
return 0;
}


Drewermerc

hola amigo.
Bueno pues no se que problema tengas ami me abre bien e archivo y también me muestra el contenido.
que es el error que te dice o que.

Saludos.
Drewermerc.

++c

Hola Drewermerc,

gracias por contestar. En realidad no me muestra ningún error, sino que se iba a ejecutar la parte del else para mostrame el mensaje de "archivo no encontrado".

Pero me acabo de dar cuenta al comentarme que te funcionaba y era que no escribía su extensión, en este caso *.txt.

Muchas gracias, al menos me sirvió para darle otro toque a la imaginación de porqué no me funcionaba...

Saludos!!