Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi WideString aus Array of Byte (https://www.delphipraxis.net/118236-widestring-aus-array-byte.html)

Zacherl 3. Aug 2008 18:00


WideString aus Array of Byte
 
Hey,

ich bekomme ein Array mit folgendem Aufbau:

#0 #XX #0 #XX #0 #XX #YY #YY

Wobei das #YY Paar ein Unicode Zeichen darstellt. (Glaube das ist BigEndian Format)

Wie bekomme ich die Zeichenfolge in meinen WideString kopiert? Habs so probiert, was aber nicht funktioniert:

Delphi-Quellcode:
SetLength(WideContent, DataLen div SizeOf(WideChar));
CopyMemory(@WideContent[1], @Data[0], DataLen);
Gruß Zacherl

mkinzler 3. Aug 2008 18:03

Re: WideString aus Array of Byte
 
Versuch mal
Delphi-Quellcode:
for i := 0 to Length( Data) do
    WideContent[i] := Data[i];

Zacherl 3. Aug 2008 18:09

Re: WideString aus Array of Byte
 
Ne das geht leider nicht. WideChar hat ja auch 2 Bytes. Könnte es am Big Endian liegen? Ich weiß nicht, ob der Delphi WideString Big oder Little Endian verwendet.

mkinzler 3. Aug 2008 18:10

Re: WideString aus Array of Byte
 
Wohl Little Endian

Zacherl 3. Aug 2008 18:16

Re: WideString aus Array of Byte
 
Okay hat geklapt! Hab einfach die Byte Order jedes WideChars geändert und voilla :)

Gruß Zacherl


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:58 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