ReadLN würde ich in diesem Falle nicht benutzen, wenn es sich nicht um ein PlainText-Format handelt. Ein falsches Zeichen, und schwupp die
wuppdi ist es vorbei.
Mal n Copy&Waste:
Delphi-Quellcode:
const
BUF_SIZE = 1024000; //1 MB
fXMLStream := TFileStream.Create(fFilePath, fmOpenRead or fmShareDenyNone);
while not Terminated do begin
fsBuf := StringOfChar(#00, BUF_SIZE);
i := fXMLStream.Read(fsBuf[1], BUF_SIZE);
{Mach was mit dem Buffer }
Finalize(fsBuf);
if i <> BUF_SIZE then
Terminate;
end;