Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Record <> String umwandlung (https://www.delphipraxis.net/15420-record-string-umwandlung.html)

choose 28. Jan 2004 15:47

Re: Record <> String umwandlung
 
Hallo SleepyMaster,
bitte nimm Dir den Hinweis der Currywurst zu Herzen: Sobald Du mit Strings (variabler Länger) arbeitest, wird diese Lösung (prozessübergriefend, zB über ein Netzwerk) nicht mehr Funktionieren (mal abgesehen von komplexeren Datentypen...). Darüber hinaus werden bei Strings fester Länge so uU Daten übertragen, deren Speicherbereich zuvor anderweitig verwendetet wurde (zB von Objekten, die Passwörter oä in privaten Exemplarvariablen inne hielten), unverschlüsselt und vor allem überflüssigerweise über das Netz verbreitet...

Das Kernproblem, dass Dich beschäftig nennt sich Serialisierung und wurde in anderer Form, nämlich der Persistenzierung von Datenstrukturen bereits zusammen mit den auftretenen Problemen häufiger in diesem Forum besprochen. Zu finden uU bei der Problemstellung "Schreiben von Records in typisierte Dateien".

SleepyMaster 28. Jan 2004 15:54

Re: Record <> String umwandlung
 
Zitat:

Das Kernproblem, dass Dich beschäftig nennt sich Serialisierung
Mein Problem hat mit Strings mit variabler Länge o.ä. überhaupt nichts zutun! Es werden nur boolean Werte gespeichert.
Zitat:

Sind über 30 Bools drinne

choose 28. Jan 2004 16:02

Re: Record <> String umwandlung
 
Und warum dann kein Array der Form
Delphi-Quellcode:
type
  TMyArray = array[0..29] of Boolean;
bzw, falls Du benannte Indizes benötigst:
Delphi-Quellcode:
type
  TMyElement = (meOne, meTwo, meThree);
  TMyArray = array[TMyElement] of Boolean;
und eine Verwendung der Art (2. Variante)
Delphi-Quellcode:
var
  myVar: TMyArray;
  i: TMyElement;
begin
  myVar[meOne]:= GetValue(meOne);
  myVar[meTwo]:= myVar[meOne] and GetValue(meTwo);
  myVar[meThread]:= False;
 
  for i:= Low(i) to High(i) do
  begin
    if i=meTwo then
      write('Hey, it''s just the second value: ');
    Writeln(arVar[i]);
  end;

SleepyMaster 28. Jan 2004 17:01

Re: Record <> String umwandlung
 
Zitat:

Und warum dann kein Array der Form
Weil nicht gewusst :oops:


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:23 Uhr.
Seite 2 von 2     12   

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