Uwe Raabe |
30. Jun 2011 07:42 |
AW: Unicode String nach Hex mit angabe der Codepage
Zitat:
Zitat von Thom
(Beitrag 1109090)
Zitat:
Zitat von Uwe Raabe
(Beitrag 1108998)
Da TBytes als array of Byte (8 Bit) deklariert ist, können da unmöglich Werte wie $043B (16 Bit) drinstehen.
|
Wie ist es dann möglich, daß TStringStream einen UTF8-/Ansi-/WideString in einem TBytes-Array speichern kann? :gruebel:
|
Ich habe ja nicht behauptet, daß man WideStrings nicht in TBytes packen kann. Es ist nur nicht möglich, daß in TBytes Werte wie ($043B, $0438, $043D, $0438, $044F) stehen. Möglich ist aber eine solche Darstellung: ($3B, $04, $38, $04, $3D, $04, $38, $04, $4F, $04). Dies entspricht aber 1:1 der binären Darstellung des Unicode-Strings "линия". Wie man allerdings erwarten kann, daß TEncoding bei einem Input von "Zeile" die binäre Darstellung von "линия" zurückgeben soll, ist mir nicht ganz klar. Das ist eigentlich eine Aufgabe für ein Übersetzungswörterbuch. Solange ein solchen Unicode-basiert ist, braucht man sich um Codepages aber gar nicht zu kümmern.
|