AW: Webservice
Bitte prüfen ob Delphi 6 schon die UTF-8 Konvertierungsroutinen kennt:
http://docwiki.embarcadero.com/RADSt...erungsroutinen |
AW: Webservice
Zitat:
Der Rückgabewert ist dann UTF8String.... |
AW: Webservice
Hallo hier ein kurzes Statusupdate,
Wie es scheint kann man die Konvertierungsroutinen http://docwiki.embarcadero.com/RADSt...erungsroutinen nicht unter Delphi 6 implementieren, sondern erst ab höheren Versionen (z.B. Delphi 2010). Leider können wir mit dem Projekt nicht auf eine Höhere Version gehen, da dies abseits vom Webservice zu umfangreich ist. Zitat:
|
AW: Webservice
Wir benutzen AnsiToUTF8 in D6 für ein altes Webserver-CGI-Projekt und das geht ganz gut. Dort werden Tokens in einer UTF8 codierten HTML-Vorlagen-Datei ersetzt, damit die üblichen Verdächtigen (Umlaute, scharfes S usw.) in den Text kommen und das klappt.
|
AW: Webservice
Da es sich bei utf8 um 8Bit-Zeichen(folgen) handelt, kannst Du problemlos mit Ansi-Strings arbeiten. Du mußt "nur" für die richtige Kodierung sorgen falls AnsitUtf8 in D6 nicht vorhanden ist, bastelst Du es Dir halt selber:
Delphi-Quellcode:
Wobei Du natürlich noch die Codepage der Ansi-Codierung beachten mußt.
function MyAnsitoUTF8(instr:ansistring):ansistring;
var i : integer; begin for i:=1 to length(instr) do case instr[i] of 'ä' : result:=result+#$C3+#$A4; ..... else result:=result+instr[i]; end; end; Gruß K-H |
AW: Webservice
Zitat:
Guten Morgen, vielen Dank an Jumpy und p80286, also es funktioniert unter Delphi 6. Die Funktion zum konvertieren ist schon in Delphi 6 enthalten. Nachfolgend ein Auszug aus dem Code, falls irgendwann mal andere Leute vor dem gleichen Problem stehen (über die Loop werden nur die einzelnen Elemente der Stringlist übergeben). Grüße Sebastian
Delphi-Quellcode:
//Ausgabe zusammenstellen
HTTP_Stream.Position:=0; my_Response_utf8.LoadFromStream(HTTP_Stream); // Loop für die StringList Antwort For e:= 0 to my_Response_utf8.Count -1 do begin my_Response_Ansi.Add(utf8toansi(my_Response_Utf8[e])); end; Memo1.Lines.AddStrings(my_Request_Ansi); Memo2.Lines.AddStrings(my_Response_Ansi); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:38 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz