Automatische Formaterkennung
Fast jeder Hersteller von GPS-Software und GPS-Geräten scheint ein sehr eigenes, sehr spezielles Dateiformat zu nutzen, um Routen, Tracks und Wegpunktlisten zu speichern. Das ist kein Grund zur Beunruhigung. RouteConverter hilft durch diesen Dschungel indem es automatisch das Format einer beliebigen Datei mit GPS-Daten erkennt und verlässt sich beim Lesen nicht auf die Dateiendungen.
Beim Lesen einer Datei werden alle Dateiformate ausprobiert, um das Format der Datei zu erkennen und die Daten zu lesen. Während dieser Erkennungsphase wird das jeweils aktive Format angezeigt:
Nach Laden und Erkennen einer Datei eines bekannten GPS-Formats werden entsprechende Informationen angezeigt. Hier ein Beispiel:
Hier kann man sehen:
- RouteConverter hat das Dateiformat als "Google Earth 5 (*.kml)" erkannt
- Die Datei enthält 5 Positionslisten: 1 Route, 2 Tracks und 2 Wegpunktlisten
- Die aktuell angezeigte Positionsliste ist ein Track mit dem Namen "Sebastians Runmeter-Cycle-20110806-1034"
- Der angezeigte Track enthält 2548 Positionen und verläuft über eine Strecke von 122.5 Kilometern. Die Summe aller Steigungen beträgt 1427 Meter, die Summe aller Gefälle beträgt 1355 Meter.
Mehrere Positionslisten innerhalb einer Datei werden von den folgenden Formaten unterstützt:
Technischer Hintergrund
Ein Informatikprinzip, um Programme robust zu implementieren, lautet stark verkürzt:
Sei beim Lesen von Daten möglichst lax und beim Schreiben möglichst strikt.
Daraus folgt, daß sich der Programmcode beim Lesen der Daten auf die Dateiendung sowieso nicht verlassen dürfte und stur versucht, die internen Strukturen mit den gelesenen Daten zu füllen. Stattdessen rechnet guter Programmcode immer damit, kaputte oder falsche Daten vorgesetzt zu bekommen. Diese Robustheit sieht der Nutzer nicht direkt, sie kostet aber viel Aufwand bei der Programmierung.
Also habe ich da aus der Not eine Tugend, d.h. ein Feature, gemacht: RouteConverter erkennt ohne Zutun des Benutzers das Dateiformat und liest die Datei ein. Dafür kommen alle Formate an die Reihe und dürfen versuchen, die Daten zu lesen.
Zu "vorsichtige" Formate lehnen Dateien ab, die eigentlich für sie bestimmt wären - bei den XML-basierten Formaten wie dem Google Earth (*.kml) Format passiert das häufiger. Zu "gierige" Formate interpretieren auch Daten, die sie gar nicht verstehen können, und liefern dann Müll zurück - Garmins POI DB (*.xcsv) ist ein Kandidat dafür.
Bitte nutzt das Forum für Fragen oder zum Melden noch nicht unterstützter Dateiformate.