![]() |
Re: Ist wahres Unicode mit Delphi überhaupt möglich?
* Tiburon haben will :stupid: *
Scheint nur so, als würden dann genau die Leute Probleme bekommen, die gerne mal einen String als Array verwendet haben. Wie ist es eigentlich damit:
Delphi-Quellcode:
Wobei Data ein ByteArray ist, in dem jedes Byte ein Zeichen ist? Wird dann vermutlich alles falsch in MyString kopiert und MyString bekommt die doppelte Länge, die nötig wäre, da mit jedem neuen Element 2 Bytes hinzugefügt werden oder?
SetLength(MyString, DataLen);
CopyMemory(@MyString[1], @Data[0], DataLen); Gruß Zacherl |
Re: Ist wahres Unicode mit Delphi überhaupt möglich?
Ich habe es eben ausprobiert. Das geht tatsächlich nur dann, wenn man MyString als "AnsiString" deklariert.
Ich sehe hier allerdings auch kaum Raum für implizite Konvertierungen. "CopyMemory()" ist schon eine Sache für sich. ;-) // EDIT: Ich bin mir nicht sicher, ob ich Dich richtig verstanden habe. Das war mein Test-Code:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var MyString : AnsiString; data : array[0..4] of byte; DataLen : integer; begin DataLen:= SizeOf(Data); data[0]:= 72; // H data[1]:= 65; // A data[2]:= 76; // L data[3]:= 76; // L data[4]:= 79; // O SetLength(MyString, DataLen); CopyMemory(@MyString[1], @Data[0], DataLen); ShowMessage( MyString ); end; |
Re: Ist wahres Unicode mit Delphi überhaupt möglich?
Ah vielen Dank fürs Teste :) War genau das, was ich wissen wollte.
|
Re: Ist wahres Unicode mit Delphi überhaupt möglich?
Zitat:
Zitat:
Gruß Assertor |
Re: Ist wahres Unicode mit Delphi überhaupt möglich?
Zitat:
|
Re: Ist wahres Unicode mit Delphi überhaupt möglich?
Zitat:
:dp: |
Re: Ist wahres Unicode mit Delphi überhaupt möglich?
Hallo Zacherl,
die Trickser steigen dann einfach von "Array of Byte" auf "Array of Word" um. Nur die Kompatibilität von "packed Array of Char" mit String ist dann dahin, oder ist Char dann auch ein 16Bit Wert? Wo bleibt dann der 8Bit-Char? Gruß K-H |
Re: Ist wahres Unicode mit Delphi überhaupt möglich?
Der Datentyp Char ist jetzt ein 16bit-Wert. Wer auch künftig den alten Char haben mag, der benutzt AnsiChar/PansiChar.
"packed array of char" und "string" ist in sich wieder konsistent - alles unicode. Kann ich aber gern später mal ausprobieren - bis zum heutigen Tage habe ich das Konstrukt "packed array of char" nie explizit genutzt. |
Re: Ist wahres Unicode mit Delphi überhaupt möglich?
Zitat:
|
Re: Ist wahres Unicode mit Delphi überhaupt möglich?
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:46 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