Ich stand ja richtig auf der Leitung...
ich hab es etwas abgeändert, nur zur 'Übersichtlichkeit', da ich mich mit sprechenden Bezeichnungen besser zurecht finde.
Delphi-Quellcode:
type
TBuchstabe = record
Zeichen : char;
attribut : byte;
end;
var
buchstabe : array of array of TBuchstabe;
Procedure Speichern(const Dateiname:String);
var
Datei:TFileStream;
i,x,y:Integer;
begin
Datei:=TFileStream.Create(Dateiname, fmCreate or fmShareDenyWrite);
try
x := High(buchstabe) + 1;
y := High(buchstabe[0]) + 1;
Datei.Write(x,SizeOf(x));
Datei.Write(y,SizeOf(y));
for i := low(buchstabe) to high(buchstabe) do
Datei.Write(buchstabe[i][0].Zeichen, y*SizeOf(TBuchstabe));
finally
Datei.Free;
end;
end;
Procedure Laden(const Dateiname:String);
var
Datei: TFileStream;
i,x,y: Integer;
begin
Datei:=TFileStream.Create(Dateiname, fmOpenRead);
try
Datei.Read(x,SizeOf(x));
Datei.Read(y,SizeOf(y));
SetLength(buchstabe,x,y);
for i := low(buchstabe) to high(buchstabe) do
Datei.Read(buchstabe[i][0].Zeichen, y*SizeOf(TBuchstabe));
finally
Datei.Free;
end;
end;
Vielen Dank für eure Arbeit!
FG Dunkelbunt