Ich habe das nun mal so versucht aber komischerweise kann man nur die ersten 4 byte anzeigen lassen.
Delphi-Quellcode:
var
Stream: TFileStream;
i: Integer;
bsize : int64;
begin
Memo1.Clear;
Stream := TFileStream.Create('1.tcj', fmOpenRead);
bsize := stream.Size;
SetLength(Buffer, bsize);
Stream.Read(Buffer[0], SizeOf(Buffer));
// Nur zum test
memo1.Lines.Add(inttohex(buffer[0],2));
memo1.Lines.Add(inttohex(buffer[1],2));
memo1.Lines.Add(inttohex(buffer[2],2));
memo1.Lines.Add(inttohex(buffer[3],2));
memo1.Lines.Add(inttohex(buffer[4],2));
memo1.Lines.Add(inttohex(buffer[5],2));
memo1.Lines.Add(inttohex(buffer[6],2));
memo1.Lines.Add(inttohex(buffer[7],2));
memo1.Lines.Add(inttohex(buffer[8],2));
memo1.Lines.Add(inttohex(buffer[9],2));
memo1.Lines.Add(inttohex(buffer[10],2));
memo1.Lines.Add(inttohex(buffer[11],2));
for i := 0 to bsize do begin
if (buffer[i]=$43) and (buffer[i+1]=$37) and (buffer[i]=$F2) then begin // diese Daten kommen definitiv vor in der Datei!!
memo1.Lines.Add('--'); // dient nur als kontrolle ob was gefunden wurde
end;
end;
label1.Caption := inttostr(i);
Stream.Free;
end;
Das oben dient nur zum testen. Das Ergebnis:
02
0A
53
59
00
00
00
00
00
00
00
00
Es sind aber keine 00 sondern andere Werte in der Datei.
Mit der Ausgabe im Label habe ich getestet ob die gesamte Datei mit der schleife durchlaufen wird. das wird sie! Verstehe das nicht.
wäre echt nett wenn mir jemand weiter helfen könnte. Event. auch mit Code. Danke!!