Título: Problema con fgets Publicado por: P.AGCD en 14 Julio 2011, 13:58 pm Buenas os dejo el codigo, mi problema es que no consigo guardar los strings en el struct Lista_equipos.
Quiero guardar cada linea del archivo en una posicion de Lista_Equipos linea 1 ---> Lista_Equipos[1] linea 2 ---> Lista_Equipos[2] ... typedef struct { char Nombre_Equipo [MAX]; }Lista_Equipos[50]; void LeerEquipos ( Lista_Equipos* ListaEquipos, int NumeroDeEquipos) { int i; char caracter; FILE *archivoEquipo; archivoEquipo = fopen ("Equipos.txt", "r"); if (archivoEquipo == NULL) { printf("NO EXISTE EL FICHERO!\n"); exit(1); } archivoEquipo = fopen ("Equipos.txt", "r"); i=0; while (!feof(archivoEquipo)) { i=1; fgets(ListaEquipos->Nombre_Equipo, MAX, archivoEquipo); //puts(ListaEquipos->Nombre_Equipo); Este puts si que me escribe por pantalla una a una las lineas del archivo, es decir que me lo lee bien. if (caracter=='#') i++; NumeroDeEquipos++; } puts(ListaEquipos[4]->Nombre_Equipo); El problema es que no me almacena los strings en la memoria, este puts me escribe cosas raras, solo funciona el puts(ListaEquipos[1]->Nombre_Equipo);, si pongo pongo otro valor para i no me va. fclose(archivoEquipo); } Alomejor me falta algo para almacenar lo que va leyendo o algo :S Gracias! Título: Re: Problema con fgets Publicado por: satu en 14 Julio 2011, 17:24 pm Hola
Prueba con esto Código
Y quita el i=1 Saludos Título: Re: Problema con fgets Publicado por: P.AGCD en 14 Julio 2011, 18:00 pm Eso funciona pero hay veces que solo tendre que escribir el el sting de la posicion 3 por ejemplo y no todos.
Título: Re: Problema con fgets Publicado por: kiriost en 14 Julio 2011, 20:41 pm Entonces sustituye i por el número del string en donde desees escribir.
|