Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi verschiedene Infos in eine Datei speichern (https://www.delphipraxis.net/28634-verschiedene-infos-eine-datei-speichern.html)

Patrick 27. Aug 2004 10:13


verschiedene Infos in eine Datei speichern
 
Tach,

Ich will verschiedene Informationen in eine Datei packen.
Das sieht zur Zeit so aus:
Code:
Stream := TFileStream.Create('datei.dat', fmCreate);
Memo2.Lines.SaveToStream(stream);
ListBox1.Items.SaveToStream(stream);
TRY
  Stream.Write(von, SizeOf(von));
  Stream.Write(bis, SizeOf(bis));
FINALLY
  Stream.Free;
END;
Das Laden dementsprechend so:
Code:
  Stream := TFileStream.Create('datei.dat', fmOpenRead);
  Memo2.Lines.LoadfromStream(stream);
  ListBox1.Items.LoadfromStream(stream);
  TRY
    Stream.read(von, SizeOf(von));
    Stream.read(bis, SizeOf(bis));
  FINALLY
    Stream.Free;
  END;
Vorher habe ich diese Informationen in 3 einzelnen Dateien gespeichert, nun will ich aber nur noch eine Datei erstellen, aber das ganze funktioniert nicht so, wie es soll. z.B. das Memo2 weis ja nicht wieviel es von dem Stream laden soll...

Wie kann ich das realisieren, oder gibt es eine andere viel einfachere Art?

Fossibaer58809 27. Aug 2004 10:34

Re: verschiedene Infos in eine Datei speichern
 
Versuch mal die Reader und Writerobjekte zu verwenden.
Die bieten (fast) alle Möglichkeiten Daten unterschiedlichen Typs in eine Datei zu schreiben und aus dieser zu lesen.

Michael

Steve 27. Aug 2004 10:47

Re: verschiedene Infos in eine Datei speichern
 
Du kannst es auch folgendermaßen versuchen:
Vor dem Speichern (z.B. des Memo-Inhalts) Größe ermitteln und in die Datei schreiben, beim Laden erst die Größe aus der Datei auslesen und schon weißt Du, wie viel Du (z.B. in das Meno) aus dem Stream lesen musst.

Gruß
Stephan


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