Seite 1 von 1
XML Umlaute
Verfasst: 18.02.2011 18:03
von Iggels
Ich möchte eine XML Datei mit Umlauten auslesen, diese hier:
Code: Alles auswählen
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<verzeichnis>
<titel>Test Eintrag</titel>
<eintrag>
<stichwort>Genf</stichwort>
<eintragstext>Genf ist der Sitz von ...</eintragstext>
</eintrag>
<eintrag>
<stichwort>Köln</stichwort>
<eintragstext>Köln ist eine Stadt, die ...</eintragstext>
</eintrag>
</verzeichnis>
Leider spuckt mir die Xml.pb aus der Hilfe immer einen Fehler aus:
Error
---------------------------
Error in the XML file:
Message: not well-formed (invalid token)
Line: 9 Character: 23
---------------------------
An der Stelle ist ein Umlaut, wenn ich den weghau gehts. Hat jmd ne idee was das Problem ist?
Re: XML Umlaute
Verfasst: 18.02.2011 18:10
von ts-soft
Re: XML Umlaute
Verfasst: 18.02.2011 18:12
von DarkDragon
Ist die Datei auch wirklich im UTF-8 Encoding gespeichert?
Re: XML Umlaute
Verfasst: 18.02.2011 18:27
von Iggels
ahhhh danke ts-soft, klaro, funtzt
@DarkDragon jup is utf8 und unicode eingestellt
Re: XML Umlaute
Verfasst: 18.02.2011 18:35
von Thorsten1867
Ich verwende jede Menge XMLs mit Umlauten in meinen Programmen.
Am besten mal mit Notepad++ überprüfen, welches Format die Datei wirklich hat.
Noch besser XML direkt mit PureBasic erzeugen:
Code: Alles auswählen
If CreateXML(0)
*MainNode = CreateXMLNode(RootXMLNode(0))
If *MainNode
SetXMLNodeName(*MainNode, "verzeichnis") ;{ MainNode
*NewNode = CreateXMLNode(*MainNode, -1)
If *NewNode
SetXMLNodeName(*NewNode, "titel")
EndIf
;
; .....
;
SaveXML(0, "Test.xml")
EndIf
FreeXML(0)
EndIf
Re: XML Umlaute
Verfasst: 18.02.2011 19:00
von Nino
Bei dem angegebenen Link steht u.a.
Umlaute und das ß müssen aber so definiert werden:
Ä Ä
Ö Ö
Ü Ü
ä ä
ö ö
ü ü
ß ß
Die Aussage gilt wohl für ASCII-Codierung.
Aber sowas sollte mit
wie Iggels es gemacht hat, nicht nötig sein (weil das
sonst völlig nutzlos wäre).
Und die XML-Datei muss natürlich auch tatsächlich im UTF-8-Format gespeichert sein!
Grüße, Nino
Re: XML Umlaute
Verfasst: 18.02.2011 19:06
von STARGÅTE
Also ich kann die XML Datei die wirklich in UFT-8 gespeichert ist, ohne probleme mit der Xml.pb öffnen.
Speicher ich die XML-Datei jedoch in ASCII, bekomm ich den fehler.
Von daher vermute ich, dass du die datei garnicht in UTF-8 gespeichert hast.
(es geht dabei um die XML-Datei, nicht zum PureBasic!)
Re: XML Umlaute
Verfasst: 18.02.2011 19:16
von Nino
Thorsten1867 hat geschrieben:Am besten mal mit Notepad++ überprüfen, welches Format die Datei wirklich hat.
Genau, mit
Notepad++ habe auch ich die Erfahrung gemacht, dass das Encoding von Textdateien richtig erkannt wird. Manche anderen (Freeware-) Editoren machen da Fehler, so dass man sich auf deren Anzeige nicht verlassen kann.
Grüße, Nino
Re: XML Umlaute
Verfasst: 18.02.2011 19:47
von ts-soft
Sicher erkennbar ist es nur mit BOM. Jegliche Funktion oder API die Codierung auch ohne BOM erkennt ist
unzuverlässig! Es gibt dafür keine zuverlässige Funktion.