[Talk-de] unbekanntes Datenformat aus GPS-Logger

qunuxy-osmmailinglists at yahoo.com qunuxy-osmmailinglists at yahoo.com
So Jun 10 12:15:04 UTC 2012


Jetzt mit Offset-Berechnung, verwendet "*" aus der NMEA-Prüfsumme:


#include <stdlib.h>
#include <stdio.h>

int main (int argc, char *argv[])
{
    if (argc != 2)
    {
        printf("usage: %s filename\n", argv[0]);
        exit(1);
    }
    else
    {
        FILE *file = fopen(argv[1],"r");
        
        if (file == NULL)
        {
            printf("Could not open file\n");
            exit(1);
        }
        else
        {
            int start = 0;
            int detect = 0;
            int c;
            long int pos = 0;
            int shift;
            
            while ((c = fgetc(file)) != EOF)
            {
                if (c == '\n')
                {
                    if(start)
                    {
                        printf("\n");
                    }
                    else
                    {
                        start = 1;
                    }
                }
                else
                {
                    if(start)
                    {
                        if(detect)
                        {
                            c+=shift;
                            c+=128;
                            c%=128;
                            printf("%c",c);
                        }
                        else
                        {
                            pos = ftell(file);
                            
                            while ((c = fgetc(file)) != EOF)
                            {
                                if (c == '\n')
                                {
                                    fseek(file,-4,SEEK_CUR);
                                    shift = '*' - fgetc(file);
                                    detect = 1;
//                                     printf("shift: %d\n",shift);
                                    break;
                                }
                            }
                            
                            fseek(file,pos,SEEK_SET);
                        }
                    }
                }
            }
            
            fclose(file);
        }
    }
    
    return 0;
}




----- Ursprüngliche Message -----
Von: Paul Hartmann <phaaurlt at googlemail.com>
An: Openstreetmap allgemeines in Deutsch <talk-de at openstreetmap.org>
CC: 
Gesendet: 10:33 Sonntag, 10.Juni 2012
Betreff: Re: [Talk-de] unbekanntes Datenformat aus GPS-Logger

Hm, als zusätzliche Schikane scheint der Offset für jede Datei
verschieden zu sein (vergleiche erste Mail). Naheliegenderweise müsste
der Wert im Header kodiert sein:

559683543 => 57
545946117 => 40

Was haben sich die Hersteller hier nur wieder einfallen lassen, um
sicherzustellen, dass der Käufer auch brav die mitgelieferte Software
nutzt?

Paul

_______________________________________________
Talk-de mailing list
Talk-de at openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-de





Mehr Informationen über die Mailingliste Talk-de