![]() |
Umlaute UTF 8 über socket
Hallo,
möchte aus einen Memo die Umlaute mit übertragen. Werden aber nicht richtig angezeigt! Was ist hier falsch?
Delphi-Quellcode:
MSG := UTF8ToString(Memo1.Text);
s := String.Format('<event>'#10'<address>%s</address>'#10'<message>%s</message>'#10'</event>',[Edit1.Text,MSG]); |
AW: Umlaute UTF 8 über socket
Das ist falschrum, denn du benutzt UTF8Decode um etwas zu enkodieren. Der Compiler beschwert sich aus gutem Grund über den Quelltext.
Korrekt ist UTF8Encode. Ich würde übrigens RawByteString nicht durch Format schicken, denn dann wird eine Umwandlung in string vorgenommen. Spätestens beim Dekodieren kann Datenverlust auftreten, wenn man ständig zwischen RawByteString und string implizit hin und her konvertiert. |
AW: Umlaute UTF 8 über socket
Liste der Anhänge anzeigen (Anzahl: 1)
Ich komme nicht hinterher was du vor hast. Willst du Zeichen wie "<" im XML maskieren? Das geht automatisch wenn man das nicht von Hand als Strings zusammenbastelt sondern eine Xml-Bibliothek benutzt wie z.B.
Delphi-Quellcode:
Anhang 48555
implementation uses Xml.XmlIntf, Xml.XmlDoc;
{$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); var xmlDocument: IXMLDocument; xmlNode: IXMLNode; resultingString:String; asString: String; begin xmlDocument := LoadXMLData('<event />'); xmlNode := xmlDocument.DocumentElement.AddChild('address'); xmlNode.Text := Edit1.Text; xmlNode := xmlDocument.DocumentElement.AddChild('message'); xmlNode.Text := Edit2.Text; // Test-Ausgabe Memo2.Text := xmlDocument.XML.Text; end; Ansonsten kannst du auch ![]() |
AW: Umlaute UTF 8 über socket
Hallo,
der String soll über Socket versendet werden. Das geht auch! Nur die Umlaute kommen als ??? an :-(
Delphi-Quellcode:
procedure TForm1.BitBtn1Click(Sender: TObject);
var s: String; begin socket.Open; s := String.Format('<event>'#10'<address>%s</address>'#10'<message>%s</message>'#10'</event>',[Edit1.Text,Memo1.Text]); socket.Socket.SendText(s); socket.Close; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:06 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