Liebe Gemeischaft
Ich zerbreche mir den Kopf über folgendes Problem mit einer Schleife:
Ich habe binäre Dateien in deren jeweils eine Serie von Werten stehen (single type). Diese sind sequenziell angeordnet, aber die erste Hälfte sind X-Werte und die zweite hälfte sind Y-Werte und ich kenne die Anzahl X-Werte (n).
zb: 1.2345 2.3456 3.4567 4.5678 5.6789 6.7890 (n=3, X-Werte: 1.2345 2.3456 3.4567, Y-Werte: 4.5678 5.6789 6.7890) - eigentlich gibt es keinen Abstand zwischen den Werten, aber die Länge der einzelnen Werten ist ja bekannt.
Nun müsste ich in einer Schleife die entsprechenden X & Y-Werte-paare auslesen und übergeben (X=1.2345,Y=4.5678, ...).
Habe (u.a) folgendes versucht, wobei es nun am Seek zu scheitern scheint:
Delphi-Quellcode:
var
k, BinSize: integer;
BinDat: array of Real;
BinFile : TStream;
Xnum, Ynum, t: single;
...
SetLength(BinDat, BinSize);
BinSize:= n*2;
for k := 0 to BinSize-n-1 do
begin
BinFile.Read(t, 4); // lese single, 4 bites
BinDat[k]:=t;
Xnum:=BinDat[k];
Seek(BinFile, BinSize-n+k);
BinFile.Read(t, 4);
BinDat[k]:=t;
Ynum:=BinDat[k];
AddXY(Xnum,Ynum); // fügt Werte-paar in TeeChart-Serie ein
end;
Wüsste mir jemand Rat geben ?