bueno aqui con una duda tengo un proyecto donde tengo que leer de un archivo .txt cierta informacion de la siguiente manera:
1|Nombre|Apellido|Pais|Telefono|E-mail|Edad|Sexo|Fecha Nacimiento
2|Nombre|Apellido|Pais|Telefono|E-mail|Edad|Sexo|Fecha Nacimiento
.
.
.
.
Y asi sucesivamente, pero mi problema es que solo me lee el nombre y lo almacena en la variable codigo y luego se queda trabado en uno de los dos ciclos while.
Nota: Esta informacion debo de leerla del fichero .txt y cargarla a una estructura.
Agradeceria mucho si alguien me pudiera brindar una ayuda, adjunto el codigo que llevo de momento.
#include _stdio.h_
#include _string.h_
#include _conio.h_
int main()
{
FILE *contenido;
char *pathArchivo;
char linea [250];
char *codigo;
char *nombre;
char *apellido;
char *direccion;
char *correo;
char *edad;
char *telefono;
char *token;
int opcion=1;
int contador=1;
pathArchivo="Clientes.txt";
contenido=fopen(pathArchivo, "r");
if(!pathArchivo)
printf("ARCHIVO NO EXISTE, VERIFIQUE LA RUTA DE ACCESO PARA %s", pathArchivo);
else
{
printf("ARCHIVO ENCONTRADO SATISFACTORIAMENTEnn");
while(!feof(contenido))
{
fgets(linea, 250, contenido);
token=strtok(linea, "|");
strcpy(linea, token);
while((token=strtok(NULL, "|"))!=NULL)
{
switch(opcion)
{
case 1:
{
strcpy(codigo, token);
printf("Codigo: %s", codigo);
opcion++;
break;
}
case 2:
{
strcpy(nombre, token);
printf("Nombre: %s", nombre);
opcion++;
break;
}
case 3:
{
strcpy(apellido, token);
printf("Apellido: %s", apellido);
opcion++;
break;
}
case 4:
{
strcpy(direccion, token);
printf("Direccion: %s", direccion);
opcion++;
break;
}
case 5:
{
strcpy(correo, token);
printf("Correo: %s", correo);
opcion++;
break;
}
case 6:
{
strcpy(edad, token);
printf("Edad: %s", edad);
opcion++;
break;
}
case 7:
{
strcpy(telefono, token);
printf("Telefono: %s", telefono);
opcion=1;
break;
}
}
}
contador++;
}
}
getch();
}