![]() |
MS XML 6.0 speichern von Umlauten bzw. Sonderzeichen
Hallo!
Ich benutze die Funktionen aus der MSXML6.DLL. Das funktioniert auch alles ganz, bis auf die deutschen Umlaute bzw. Sonderzeichen. Beispiel-Code:
Delphi-Quellcode:
In der XML-Datei sieht das dann so aus:
Procedure TFormMain.AddPickTicketTextXML(PickTicketText : TImportPickTicketText; LfdNr : Integer;
LK : String; Blank : Boolean = False); Var sub : IXMLDOMNode; Begin PickticketHdrInstruction := xmlDoc.createElement('PickticketHdrInstruction'); PickticketInstrFields := xmlDoc.createElement('PickticketInstrFields'); : : sub := xmlDoc.createElement('SpclInstrDesc'); sub.text := PickTicketText.Text; PickticketInstrFields.appendChild(sub); : : PickticketHdrInstruction.appendChild(PickticketInstrFields); ListOfHdrInstructions.appendChild(PickticketHdrInstruction); End; Zitat:
Hier sieht man, dass aus dem ü von zukünftig eine Escape Sequenz gemacht hat. Der IE zeigt da nur ein Kästchen an. Benutze ich unter Delphi die Funktion UTF8Encode, dann wandelt er aus allen UTF-8 Zeichen auch Escape Sequenzen. Das geht gar nicht . Wie kann ich denn die Umwandlung in diese Sequenzen ausschalten, so dass er den reinen UTF-8 Code schreibt und der IE das auch richtig anzeigt? Gruß, Stephan |
Re: MS XML 6.0 speichern von Umlauten bzw. Sonderzeichen
XML-Code:
<?xml version='1.0' encoding='ISO-8859-1' ?>
<root> Ein Text mit Umlauten (ü ö ä Ü Ö Ä) </root> |
Re: MS XML 6.0 speichern von Umlauten bzw. Sonderzeichen
Nein, das nützt mir auch nichts. Zum einen muss es UTF-8 bleiben, zum weiteren soll MSXML die Einträge schreiben und
da schreibt er immer noch die Escape Sequenzen rein. Der Kopf ist nachher für das Auslesen wichtig, aber hier ist das eigentliche Erstellen nicht in Ordnung. |
Re: MS XML 6.0 speichern von Umlauten bzw. Sonderzeichen
Das mit dem Kästchen könnte schon richtig so sein,
denn die #194 ist im Unicode auch kein ü ... das ü müßte eine #252 sein. Hast du auch wirklich UTF8 als Encoding angegeben? |
Re: MS XML 6.0 speichern von Umlauten bzw. Sonderzeichen
Das war jetzt ein Beispiel ohne UTF8Encode. Würde ich den Text mit UTF8Encode bearbeiten, sieht die Ausgabe so aus:
Zitat:
|
Re: MS XML 6.0 speichern von Umlauten bzw. Sonderzeichen
Liste der Anhänge anzeigen (Anzahl: 1)
Als Beispiel habe ich mal einen Screenshot vom IE gemacht, wie das dann mit UTF8Encode aussieht...
|
Re: MS XML 6.0 speichern von Umlauten bzw. Sonderzeichen
|
Re: MS XML 6.0 speichern von Umlauten bzw. Sonderzeichen
So, habe das Problem gelöst. Es lag an ein ganz anderen Stelle, die eigentlich nichts mit dem XML zu tun hat.
Allerdings hat mir der Artikel vom MSDN noch ein paar Hinweise gegeben, wie es eigentlich auszusehen hat. Trotzdem allen Beteiligten vielen Dank für die schnelle Hilfe! Stephan |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz