Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.475 Beiträge
 
Delphi 12 Athens
 
#12

AW: Unicode String nach Hex mit angabe der Codepage

  Alt 30. Jun 2011, 08:42
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?
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.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat