Seite 1 von 1

Encoding-Frage für kml-File

Verfasst: Dienstag 27. Januar 2009, 09:33
von Käptn Haddock
Hallo Forum!

Ich habe ein kleines Script geschrieben, das mir aus meiner PostGIS-Datenbank geometrische Objekte als kml erzeugt und in ein Template schreibt, das in Google-Earth bearbeitet werden soll. Dazu nutze ich die Genshi-Templateengine (wobei das mein erster Ausflug in diesen Bereich darstellt). Im Grossen und Ganzen erzeuge ich mir der Abfrage 3 Strings für ein Objekt(Name, Description, Geometrie im kml-Format), was auch gut funktioniert. Nach dem ich die Umlaute in Name und Description niedergerungen habe tritt noch folgendes Problem auf: die '<' und '>' erscheinen in der Ausgabe als '<' und '>'.
Die einzelnen Ausgaben des Geometrie-Strings sehen folgendermassen aus:

Direkt aus dem Cursur der der DB-Abfrage:

Code: Alles auswählen

'<Point><coordinates>9,49</coordinates></Point>' 
Nach dem Schreiben ins kml-file:

Code: Alles auswählen

<Point><coordinates>9,49</coordinates></Point>
Ich habe da schon verschiedentlich mit encode und decode und den errors-Parametern ohne Erfolg experimentiert, das Encoding des Scripts steht auf utf-8. Daher die Frage: Wie krieg ich die Orginalzeichen in das kml-File?
Vielen Dank für Tips und Hinweise.

Gruß Uwe

Verfasst: Dienstag 27. Januar 2009, 09:52
von Leonidas
Du musst den String AFAIR in ``Markup()`` wrappen.

Verfasst: Dienstag 27. Januar 2009, 16:29
von Käptn Haddock
Danke mal für den Hinweis. Ich werde mal danach suchen.
Als sehr unschöner Workaround hab ich das jetzt mal aus Stings zusammengenagelt weils gebraucht wird. Aber das wird zur weiteren Verwendung noch richtig gemacht.

Gruß Uwe