Hola,
estoy realizando un pequeño programa que lee un fichero csv, una vez leida la cabecera y todo, llamo a la siguiente función:
*s es la estructura donde voy a guardar lo que lea.
*in es el fichero en formato lectura.
* delim es una cadena : ";" que son los separadores de los campos.
lo que hago es guardar toda una linea en una cadena y luego con strtok y los delim pues voy guardandolo en s.
Bueno el problema es el siguiente:
cuando va a leer la linea del fichero csv:
1387;A CORUÑA;A CORUÑA;58;8.1;12:00;5.8;19:20;12.8;11:20;0.0
hago lo siguiente:
y cad queda así: "1387;A"
por lo que veo cuando encuentra un espacio deja de leerla.
¿como puedo evitar esto?
estoy realizando un pequeño programa que lee un fichero csv, una vez leida la cabecera y todo, llamo a la siguiente función:
Código [Seleccionar]
int Lee_Estacion_csv(AEMET_estacion*s, FILE *in, const char *delim)
*s es la estructura donde voy a guardar lo que lea.
*in es el fichero en formato lectura.
* delim es una cadena : ";" que son los separadores de los campos.
lo que hago es guardar toda una linea en una cadena y luego con strtok y los delim pues voy guardandolo en s.
Bueno el problema es el siguiente:
cuando va a leer la linea del fichero csv:
1387;A CORUÑA;A CORUÑA;58;8.1;12:00;5.8;19:20;12.8;11:20;0.0
hago lo siguiente:
Código [Seleccionar]
fscanf(in, "%s", cad);
y cad queda así: "1387;A"
por lo que veo cuando encuentra un espacio deja de leerla.
¿como puedo evitar esto?