Fout in geocache_visits bestand

Plaats reactie
frans d
WayPoint relatie
WayPoint relatie
Berichten: 49
Lid geworden op: 14 dec 2007 17:44
Locatie: Wageningen

Fout in geocache_visits bestand

Bericht door frans d »

Ik gebruik het geocache_visits bestand op mijn Oregon om geocaches te loggen. Onlangs heb ik ook mijn eerder gevonden caches aan dit bestand toegevoegd. Het is een .txt bestand. Sinds het toevoegen van de oude caches gaat het loggen van nieuwe caches niet goed meer. Hij voegt na elk karakter een spatie in. Waar ik voorheen dit had:
GC2B1PP,2010-08-14T13:19Z,Found it,""
krijg ik nu:
G C 2 B 1 P P , 2 0 1 0 - 0 8 - 1 4 T 1 3 : 1 9 Z , F o u n d i t , " "

Heeft iemand enig idee hoe ik dat kan verhelpen ? Kan het zijn dat ik ergens een verkeerde code in het bestand heb gezet en hoe kan ik die vinden ?

Gebruikersavatar
ErikS
WayPoint relatie
WayPoint relatie
Berichten: 988
Lid geworden op: 10 mei 2004 20:48
Locatie: Scherpenzeel
Contacteer:

Bericht door ErikS »

Volgens mij kun je het bestand gewoon weggooien. Het bestand wordt gebruikt om de gegevens te importeren in de geocaching-site. Voor zover mij bekend heeft het verder geen functie.
Als je het weggegooid hebt wordt de volgende keer dat je een geocache logt er weer een nieuw bestand aangemaakt.
volg een rijvaardigheidstraining, omdat motorrijden altijd beter (en veiliger) kan!

forced to have a TomTOM in the car, BlueBike and a Navigator5 on my motorbike,
and still the Colorado for Geocaching, Cycling and the hike!

symonsj
WayPoint relatie
WayPoint relatie
Berichten: 27
Lid geworden op: 15 mei 2008 22:03
Locatie: Arendonk (B)

Bericht door symonsj »

Volgens mij zijn die "spaties" er altijd geweest maar heb je nu met een andere tekst editor naar het bestand gekeken, eentje die geen unicode karakters ondersteund.

Vroeger werd een 8-bit code gebruikt om ASCII karakters voor te stellen. Tegenwoordig willen we software die meerdere talen ondersteunt en dan zijn er meer bitjes nodig om alle karakters te kunnen voorstellen. Daarom gebruikt o.a. Garmin unicode (UTF-8) voor de karakters in een tekstbestand. Elk karakter bestaat dan uit 16 bits ipv 8. Als je tekst editor dit begrijpt zal hij het bestand netjes laten zien zoals het hoort, inclusief de karakters uit andere talen, maar als je een oude tekst editor gebruikt, zoals notepad, dan zie je na elke letter uit het ASCII alfabet een spatie.

Gebruikersavatar
JaVaWa
WayPoint GPS specialist
WayPoint GPS specialist
Berichten: 14922
Lid geworden op: 11 feb 2008 23:46
Locatie: Traiectum
Contacteer:

Bericht door JaVaWa »

Bij UTF-8 gebruikt niet elk teken evenveel bytes; dit kan variëren van 1 tot 4 bytes (oftewel 8 tot 32 bits). De eerste 128 tekens in UTF-8 (waarin o.a. alle (hoofd)letters vallen) zijn identiek aan ASCII.
De getoonde tekst is dus geen UTF-8 wat verkeerd geïnterpreteerd wordt door de text editor (overigens kan Windows Kladblok weldegelijk omgaan met unicode); het lijkt eerder UTF-16.
Waarschijnlijk is er bij het opslaan na het toevoegen van de oude caches iets misgegaan met de tekstcodering van het bestand.
Overigens gebruikt het toestel wel UTF-8 voor gpx-bestanden, maar hoeft dat niet per sé voor alle bestanden te doen. Veel besturingssystemen (dat heeft een GPS ook) gebruiken intern UTF-16.
Kijk op https://www.javawa.nl voor software voor Mac OS X en Windows, informatie en tips

eTrex Legend HCx, fēnix (1), Forerunner 220, GPS 45, GPS 60, Montana 600, nüvi 250, Oregon 550t en 700, StreetPilot III, Vivoactive 3 en 4, zūmo 500

frans d
WayPoint relatie
WayPoint relatie
Berichten: 49
Lid geworden op: 14 dec 2007 17:44
Locatie: Wageningen

Bericht door frans d »

Als ik het antwoord van JaVaWa goed begrijp kan het dus zijn dat de Oregon werkt met een UTF-16 codering, maar dat ik het bestand na de toevoeging van de informatie over de reeds gevonden caches heb opgeslagen in UTP-8 codering. Dat zou verklaren waarom ik spaties krijg, er van uitgaande dat de eerste 8 posities in UTF-16 gelijk zijn aan die in UTF-8 en de laatste 8 bij gewone tekens 0 zijn. Elke opgeslagen teken in UTF-16 worden dan dus in UTF-8 een teken en een spatie. Dat klinkt in ieder geval aannemelijk.
Ik zal eens proberen of ik het bestand kan openen en vervolgens kan opslaan in UTF-16 codering. Als dat niet lukt, dan gooi ik het bestand weg en voeg ik de informatie weer toe als er een nieuw bestand door de Oregon is aangemaakt. In kladblok kom ik overigens de mogelijkheid om een bestand op te slaan in UTF-16 codering niet tegen. Wel ANSI, Unicode, Unicode big endian en UTF-8. Is Unicode en UTF-16 hetzelfde ?

Gebruikersavatar
JaVaWa
WayPoint GPS specialist
WayPoint GPS specialist
Berichten: 14922
Lid geworden op: 11 feb 2008 23:46
Locatie: Traiectum
Contacteer:

Bericht door JaVaWa »

Zowel UTF-8 en UTF-16 (er is ook nog UTF-32) zijn manieren om unicode-tekst op te slaan; in Kladblok wordt met unicode inderdaad UTF-16 bedoeld. Wat Kladblok als een spatie weergeeft is eigenlijk een NULL-teken.
Big endian en little endian heeft te maken met de volgorde waarin de bytes worden opgeslagen; bij little endian krijg je eerst de letter en dan de spatie (of was het net andersom? Ik heb er altijd moeite mee...).

Wat er precies gebeurt is weet ik niet, maar ik vermoed het volgende:
Normaal gesproken gebruikt de Oregon UTF-8 bij het wegschrijven naar het bestand, maar door het aanpassen en opslan in Kladblok is er een Byte Order Mark toegevoegd of juist weggelaten, waardoor de Oregon denkt met een UTF-16 bestand te maken hebben en dus alle nieuwe caches toevoegd in UTF-16. Kladblok herkent de tekst aan het eerste deel als zijnde UTF-8, en geeft alles dan ook zo weer.
De volgende keer dat je het bestand aanpast met kladblok zou je bij het opslaan even goed moeten opletten welke codering daarbij kladblok voorstelt; is het ANSI of Unicode, dan zou je juist UTF-8 moeten kiezen, en anders voor Unicode (al dan niet big endian) of misschien zelfs ANSI (dan weet je zeker dat er geen byte order mark wordt toegevoegd)?
Kijk op https://www.javawa.nl voor software voor Mac OS X en Windows, informatie en tips

eTrex Legend HCx, fēnix (1), Forerunner 220, GPS 45, GPS 60, Montana 600, nüvi 250, Oregon 550t en 700, StreetPilot III, Vivoactive 3 en 4, zūmo 500

frans d
WayPoint relatie
WayPoint relatie
Berichten: 49
Lid geworden op: 14 dec 2007 17:44
Locatie: Wageningen

Bericht door frans d »

Dat was inderdaad het probleem. Ik heb het bestand met Kladblok opgeslagen in Unicode en nu gaat het weer goed. Het bestand stond in ANSI.

Bedankt

Plaats reactie

Terug naar “Geocaching”