Einzelnen Beitrag anzeigen

Cubysoft

Registriert seit: 5. Sep 2014
Ort: Ludwigshafen
76 Beiträge
 
Delphi XE8 Professional
 
#1

Binäre Datenspeicherung

  Alt 7. Jun 2015, 01:35
Hey,

ich benutze derzeit ein Textformat, um meine Programmdaten zu speichern:

Code:
1;de //<-- Header
1;Sample;2563;3453;2143;20.3.1997;12.12.2010
2;TollerName;2343;2353;2342;20.5.2010;21.5.2010
.....
Natürlich hat das Speichern in Textform auch Nachteile. Die Daten liegen folgendermaßen vor:

Header:

Record:
- Version (Integer)
- Sprache (String, feste Länge)

Jede darauf folgende Zeile ist von einem Record Typ, dieser beinhaltet Integer, Strings (einen mit variabler, Rest mit fester Länge) und TDate. Diese Records sind alle in einer TList<TMyRecord>.

Ich kenne mich mit dem Speichern und Auslesen von binären Daten leider garnicht aus. Ich habe damals mal eine Liste mit Records (ohne Strings) ganz einfach binär abspeichern können, da ich allerdings diesmal einen String mit variabler Länge enthalten habe, komme ich nicht weiter. Ich weiß, dass es geht, nur nicht wie. Ich wäre euch wirklich dankbar, wenn ihr mir einen kleinen Beispielcode geben könntet für das schreiben und lesen binärer Informationen. Ihr könnt euch hierbei gerne an ein kompakteres Record wenden:

Delphi-Quellcode:
type
TMyRecord=record
 text: String;
 zahl: Integer;
 datum: TDate;
end;

//Das ganze dann in einer TList<TMyRecord>
Ich will hier nur nocheinmal klar machen, dass ich NICHT das Programm von euch geschrieben haben möchte (das kann man denke ich an meinen früheren Posts erkennen). Ich suche nur schon seit Stunden im Internet nach Lösungen und stolpere immer wieder über Codes, die ich nicht verstehe. Theoretisch müsste das ja mit einem MemoryStream gehn. Ich weiß leider nur überhauptnicht wie...
Tobias
  Mit Zitat antworten Zitat