Ich wollte mal einen Fehler melden.
Folgendes Beispiel, bei dem ich zu Testzwecken die Konstante
MaxBufSize auf
4 gesetzt habe:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
S: AnsiString;
begin
With TBufferedFileStream.Create('C:\Test.txt', fmCreate) do
try
S := 'ABC';
Write(S[1], Length(S));
S := 'Zu lang!';
Position := 0;
Write(S[1], Length(S));
finally
Free;
end;
end;
Was steht am Ende in der Datei? Richtig:
ABClang!
Denn erst wird ya das 'Zu lang!' in die Datei geschrieben und erst am Ende der Puffer geleert in dem 'ABC' steht.
Klar, man könnte jetzt sagen, wer so'n Müll macht wie ich bei dem Test hat selbst schuld, aber so bin ich halt