• Jueves 14 de Noviembre de 2024, 04:40

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - Andrés_Ramone

Páginas: [1]
1
C/C++ / Problema parseo cadena de caracteres
« en: Miércoles 24 de Noviembre de 2010, 16:28 »
Hola  a todos, estoy con un problema tratando de armar una funcion que tome los datos de un archivo de texto y los procese.

Yo tengo un archivo de texto que tiene datos cada dato esta separado por comas (,) yo necesito leer la linea separa cada dato convertirlo y guardarlo, mi problema surge a partir del parseo cuando parseo las lineas y las muestro divididas por coma por pantalla me devuelve esto:

asi seria el achivo de texto:

-34.676, -58.32, Buenos Aires, 4000000, 45.45, 88.1
-33.13, -68.56, Mendoza, 112900, 47.20, 79.0

asi me devuelve por pantalla:

-34.676
 -58.32
 Buenos Aires
 4000000
 45.45
 88.1

-33.13
 -68.56
 Mendoza
 112900
 47.20
 79.0

-33.13

Osea me repite el primer dato de la ultima linea que leyo.

Aca les dejo el codigo

Desde ya Muchas Gracias


int main()
{
   char linea[255];
   char s2[3] = ",";
   char *ptr;
   FILE *f;
   char* check;

   /*printf( "linea=%sn", linea );*/

   f = fopen("datos.txt","r");

   do
   {

       check = fgets(linea, 255, f);

       ptr = strtok( linea, s2 );    

       printf( "%sn", ptr );

       while( (ptr = strtok( NULL, s2 )) != NULL )  
         printf( "%sn", ptr );

   } while ( check != NULL);

   return 0;
}

Páginas: [1]