Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Unicode-String im Record speichern (https://www.delphipraxis.net/170050-unicode-string-im-record-speichern.html)

Iwo Asnet 28. Aug 2012 12:56

AW: Unicode-String im Record speichern
 
Du kannst auch binär speichern, wenn es auf die Größe ankommt. Wenn Du beide Seiten selbst implementierst, dann würde ich das Binärformat bevorzugen, da jedes Record/Klasse mit ihren LoadFrom/SaveToStream-Methoden und geeigneter Testungebung ausreichend robust ist.

Eine Delphi-Implementierung findest Du z.B. hier

uligerhardt 28. Aug 2012 13:00

AW: Unicode-String im Record speichern
 
Zitat:

Zitat von himitsu (Beitrag 1180330)
Zitat:

Zitat von uligerhardt (Beitrag 1180312)
Findest du da noch nen Link dazu? Vor dem Problem stehen wir nämlich auch in absehbarer Zeit.

So auf die Schnelle nicht.

Müste mal sehn, wie schnell ich daheim eine Unit wiederfinde, wo ich das verwendete, um hier über den Typenbezeichner suchen zu können.

Wäre toll, wenn du was findest. Meine bisherigen Experimente dazu waren nicht von großem Erfolg gekrönt. Allerdings hatte ich auch den Anspruch, das Ding nicht ausschließlich für Stringlänge 255 zu bauen und habe versucht, das mit Generics-Tricksereien zu lösen (so a la
Delphi-Quellcode:
MyString50: TFixedUnicodeString<string[50]>;
). Blöde Idee. :mrgreen:

himitsu 28. Aug 2012 13:15

AW: Unicode-String im Record speichern
 
Ich hatte es auch versucht mit den Generics zu kreuzen, aber leider kann man die nicht wie Makros verwenden, bzw. man kann keine generischen Konstanten mitgeben.

Quasi
Delphi-Quellcode:
TMyString<50>
, wo dann intern ein
Delphi-Quellcode:
array[0..50-1] of char
dekalriert wird. :cry:

Im Prinzip bestand es halt aus soeinem Array, in einem Record verpackt und dazu noch ein paar implizite und explizite Operatoren von und zu AnsiString, WideStringund zuletzt auch noch UnicodeString, welche das Array entsprechend mit einem #0-terminierten String füllten.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:42 Uhr.
Seite 3 von 3     123   

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