Hallo Nicodius,
Zitat von
Nicodius:
ok vielen herzlichen dank
problem ist das hier wird ja nur in den zwischenspeicher geschrieben oder?
die datei sollte jederzeit speicher und ladbar sein
lg nico
So lässt sich die Datei doch jederzeit laden und speichern oder?
Du kannst auch mehrere Datensätze mit der Hilfe von arrays mit setLength() anlegen und speichern.
Delphi-Quellcode:
type
Vert_Ent = record
vtjahr : Integer;
vtproz : array [0..11] of Integer;
end;
Steuer = record
st_bez : string[30];
st_jahr : array [0..11] of Integer;
st_vert : string[10];
st_aufk : array [0..11] of longint;
end;
Modell = record
und_bez : string[30];
und_st : array [0..31] of Steuer;
end;
Alles= record
// Vert_ast : array [0..30] of array [0..22] of string;
Vert_ast : array [0..30] of array [0..22] of string[255]; // <-- hier geändert
vert_datum : array [0..31] of Vert_ent;
mod_ : array [0..15] of Modell;
end;
//schreiben
procedure TForm1.Button1Click(Sender: TObject);
var
AlleDaten : Alles;
stream : TFileStream;
filename : string;
begin
filename := ChangeFileExt (Application.ExeName, '.ext');
stream := TFileStream.Create (filename, fmCreate);
AlleDaten.mod_[2].und_bez:= 'Haus';//Beispiel
try
stream.WriteBuffer(AlleDaten, SizeOf (AlleDaten));
finally
stream.Free;
end;
end;
//lesen
procedure TForm1.Button2Click(Sender: TObject);
var
AlleDaten : Alles;
stream : TFileStream;
filename : string;
begin
filename := ChangeFileExt(Application.ExeName, '.ext');
if FileExists(filename) then
begin
stream := TFileStream.Create (filename, fmOpenRead);
try
stream.ReadBuffer(AlleDaten, SizeOf (AlleDaten));
finally
stream.Free;
end;
caption:= AlleDaten.mod_[2].und_bez;//Beispiel
end;
end;