Hi,
irgendwie bekomme ich es nicht auf die Reihe ein dynamisches Array of Byte per Filestream in eine Datei zu schreiben.
Ich habe ein dynamische Array welches ich per SetLength auf die Größe setze.
Dann fülle ich das gesamte Array einfach mal mit $55.
Bei Prüfung ist auch jedes Byte = $55
nun per fs.Write in den Filestream geschrieben und nachher in die Datei geschaut sind dort keine $55 sondern irgendwelcher Datenmüll. Irgendwie machen mich Pointer immer ganz irre
Habe mal ein Beispiel kurz zusammengebaut:
Delphi-Quellcode:
const BUFSIZE = 1024;
begin
Fs := TFileStream.Create(fn, fmOpenReadWrite);
try
SetLength(ContentBlk, BUFSIZE);
for i:=low(ContentBlk) to high(ContentBlk) do ContentBlk[i] := $55;
Fs.Seek(0, soFromBeginning);
Fs.Write(ContentBlk, BUFSIZE);
FlushFileBuffers(Fs.Handle);
finally
Fs.Free;
end;
end;
Der Source ist einfach auf das Minimum reduziert, daher mag es etwas unsinnig erschreinen wenn ich einfach den Anfang einer Datei mit $55 überschreibe, aber es geht mir nur um den .write Vorgang.
Grüße aus Kassel.
Konfuzius sprach: Etwas lernen und sich immer wieder darin üben - schafft das nicht auch Befriedigung?