Home » Tipps & Tricks » Object Pascal » Records » Records abspeichern

Records abspeichern

Record abzuspeichern ist ein bischen komplizierter. Da muss man mit typisierten Dateien arbeiten. Das Problem bei solchen typisierte Dateien ist, dass man damit keine unbegrenzten Strings speichern kann. Man muss diese Strings begrenzen, z.B. Vorname: String[20]In unserem Beispiel definieren wir erst mal einen Record:

type
  TDatensatz = record
    Name: String[20];
    Vorname: String[15];
    Telefon: String[15];
  end;

Und jetzt deklarieren wir eine globale Variable vom Typ TDatensatz:

var
  Form1: TForm1;
  Datensatz: TDatensatz;

Nun kommt die Speichern Procedure an die Reihe:

procedure TForm1.Button1Click(Sender: TObject);
var
  F: File of TDatensatz;
begin
  try
    AssignFile(F,'C:Variable.dat');
    ReWrite(F);
    Write(F,Datensatz);
  finally
    CloseFile(F);
  end;
end;

Und zum Schluss die Procedure, um die Datei wieder in die Variable zu laden:

procedure TForm1.Button2Click(Sender: TObject);
var
  F: File of TDatensatz;
begin
  try
    AssignFile(F,'C:Variable.dat');
    Reset(F);
    Read(F,Datensatz);
  finally
    CloseFile(F);
  end;
end;