elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Problema con fgets
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema con fgets  (Leído 2,949 veces)
P.AGCD

Desconectado Desconectado

Mensajes: 17


Ver Perfil
Problema con fgets
« 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!


En línea

satu


Desconectado Desconectado

Mensajes: 301

Siempre aprendiendo


Ver Perfil WWW
Re: Problema con fgets
« Respuesta #1 en: 14 Julio 2011, 17:24 pm »

Hola

Prueba con esto

Código
  1. fgets(ListaEquipos[i]->Nombre_Equipo, MAX, archivoEquipo);
  2. puts(ListaEquipos[i]->Nombre_Equipo);
  3.  

Y quita el i=1

Saludos


En línea

Breakbeat como forma de vida
P.AGCD

Desconectado Desconectado

Mensajes: 17


Ver Perfil
Re: Problema con fgets
« Respuesta #2 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.
En línea

kiriost

Desconectado Desconectado

Mensajes: 58


www.godsys.com.ar Hacking y Programación


Ver Perfil WWW
Re: Problema con fgets
« Respuesta #3 en: 14 Julio 2011, 20:41 pm »

Entonces sustituye i por el número del string en donde desees escribir.
En línea

http://www.godsys.com.ar > Programación. Hacking y Cracking. Sistemas. Desarrollo Web.
Java, C/C++, PHP, Python, Perl, HTML, Game-Hacking, Defacing, Desarrollo Web, GNU/Linux, y más
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema con fgets [Solucionado]
Programación C/C++
Søra 0 1,287 Último mensaje 22 Mayo 2010, 12:15 pm
por Søra
El dichoso error de fgets.
Programación C/C++
samur88 6 5,595 Último mensaje 18 Mayo 2011, 20:51 pm
por samur88
Fgets para enteros?
Programación C/C++
Sagrini 8 5,822 Último mensaje 28 Diciembre 2011, 17:02 pm
por Sagrini
Duda con fgets
Programación C/C++
dalberto9410 4 1,984 Último mensaje 27 Marzo 2013, 07:27 am
por dalberto9410
No me reconoce función fgets
Desarrollo Web
..:ALT3RD:.. 4 1,863 Último mensaje 23 Agosto 2013, 19:25 pm
por ..:ALT3RD:..
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines