Hallo Fabian,
deine Datei Map1.f2m enthält 48 Datensätze mit jeweils 14 Zeichen. Der Inhalt der Datensätze ist binär, aber die letzten beiden Zeichen cr/lf lassen mich vermuten, dass du die Zeilen mit WriteLn() weggeschrieben hast. Das scheint mir in zweierlei Hinsicht nicht optimal zu sein. Warum mit WriteLn() schreiben, wenn du die Daten mit ReadLn() nicht zuverlässig wieder einlessen kannst? Außerdem musst du dein array doch gar nicht zerpflücken um es zu Speichern und wieder zu Laden:
Delphi-Quellcode:
type
TMatrix = packed array [1..48, 1..12] of Byte;
procedure SaveMatrix(m: TMatrix; fn: TFileName);
begin
with TFileStream.Create(fn, fmCreate) do
try
Write(m, SizeOf(m));
finally
Free;
end;
end;
procedure LoadMatrix(var m: TMatrix; fn: TFileName);
begin
with TFileStream.Create(fn, fmOpenRead or fmShareDenyWrite) do
try
Read(m, SizeOf(m));
finally
Free;
end;
end;
Freundliche Grüße vom marabu