Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
Delphi 12 Athens
|
AW: Unicodestring in stream speichern
18. Aug 2011, 14:25
Der WideString ist auch längenabhängig.
> Zusatzinfos im ShortString (bis D2007 oder 2009)
- Längenbyte (Byte) als Anzahl der Chars/Bytes ... PS: wegen diesem Byte (an Index 0), fangen unsere Strings mit 1 an
> Zusatzinfos im AnsiString (bis D2007 oder 2009)
- Längenbyte (Integer) als Anzahl der Chars/Bytes (Multibytes wären als mehrere AnsiChar gezählt)
- Referenzzählung (Integer)
- und hinten drann noch ein zusätzliches #0 für die PChar-kompatibilität
> Zusatzinfos im AnsiString (seit D2009 oder 2010)
- Längenbyte (Integer) als Anzahl der Chars
- Referenzzählung (Integer)
- Codepage (Word)
- CharSize (Word)
- und hinten drann noch ein zusätzliches #0 für die PChar-kompatibilität
> Zusatzinfos im UnicodeString
- Längenbyte (Integer) als Anzahl der Chars
- Referenzzählung (Integer)
- Codepage (Word)
- CharSize (Word)
- und hinten drann noch ein zusätzliches #0 für die PChar-kompatibilität
> Zusatzinfos im WideStringString
- Längenbyte (Integer) als Anzahl der Bytes
- (hier bin ich mir nicht sicher, mit der zusätzlichen #0, aber ich glaub die gibt es nicht)
Leerstrings sind NIL (abgesehn vom ShortString) und haben keine Zusatzinfos
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
Geändert von himitsu (18. Aug 2011 um 14:28 Uhr)
|