Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#6

Re: Mit BlockRead() Datei kopieren

  Alt 13. Sep 2007, 07:30
Hallo,

bei BlockRead muss die Dateigröße immer ein Vielfaches der Blockgröße sein - deshalb ist BlockSize=1 irgendwie optimal. Mit Streams reduziert sich der Code eigentlich auf die Methode CopyFrom():

Delphi-Quellcode:
procedure FileCopy(fnSource, fnTarget: TFilename);
var
  fsSource, fsTarget: TStream;
begin
  fsSource := TFileStream.Create(fnSource, fmOpenRead);
  try
    fsTarget := TFileStream.Create(fnTarget, fmCreate);
    try
      fsTarget.CopyFrom(fsSource, 0);
    finally
      fsTarget.Free;
    end;
  finally
    fsSource.Free;
  end;
end;
Getippt und nicht getestet.

Grüße vom marabu
  Mit Zitat antworten Zitat