![]() |
WideString -> AnsiString -> WideString verlustfrei umwandeln
Hi,
Ich möchte gerne genau das im Titel machen - also eine Codierung von z.B. アニメ wird kodiert zu %E3%82%A2 %E3%83%8B %E3%83%A1 usw. Wie lässt sich sowas realisieren? Gibt es sowas vielleicht auch schon? Ziel ist jedenfalls, WideStrings als AnsiString Daten abspeichern zu können, weil dies vom Format her vorgegeben ist. MFG |
AW: WideString -> AnsiString -> WideString verlustfrei umwandeln
Delphi-Quellcode:
var
UCS,UCS2:WIDEString; ACS:AnsiString; begin UCS := Edit1.Text; Setlength(ACS,Length(UCS)*2); Move(UCS[1],ACS[1],Length(UCS)*2); SetLength(UCS2,Length(ACS) div 2); Move(ACS[1],UCS2[1],Length(ACS)); Edit2.Text := Ucs2; end; |
AW: WideString -> AnsiString -> WideString verlustfrei umwandeln
War auch mein erster Gedanke, jedoch werden auf diese Weise doch ungültige Ansi-Char Zeichen generiert, sodass der String nicht mehr z.B. in ner CSV etc. gespeichert werden kann...
|
AW: WideString -> AnsiString -> WideString verlustfrei umwandeln
Ah, Missverständnis, etwas in der Art?
Delphi-Quellcode:
Type
TByteArray=Array[0..0] of byte; Function AsHexString(p:Pointer;cnt:Integer):String; var i:Integer; begin Result :=''; for I := 0 to cnt do Result := Result +'$'+IntToHex(TByteArray(p^)[i],2); end; procedure TForm3.Button1Click(Sender: TObject); var UCS:WIDEString; begin UCS := Edit1.Text; Edit2.Text := AsHexString(@UCS[1],Length(UCS)*2 - 1); end; |
AW: WideString -> AnsiString -> WideString verlustfrei umwandeln
Wäre wohl eine Lösung...
Naja ich habe eben gerade herausgefunden, dass ich eventuell doch mit WideStrings arbeiten kann. Ich probiere das ganze zur Zeit aus. Trotzdem danke für den Vorschlag. (so wie es aussieht gibt es UTF8Encode und UTF8Decode in Delphi, welche die Lösung wären - eben gefunden) |
AW: WideString -> AnsiString -> WideString verlustfrei umwandeln
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:17 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