我想把一个文件从一个文件夹复制到另一个文件佳下.
我想问问高手用什么函数?
高分回谢

解决方案 »

  1.   

    个人认为在windows下最方便的是:winexec('xcopy c:\windows\*.* d:\mywindows /y');
      

  2.   

    API的CopyFile()数据是复制文件的作的。这个例子也行实现文件拷贝  在本例中,我们使用数据压缩的API函数LZCopy来实现一个文件拷贝的过程,其调用格式为:CopyFile(源文件名,目标文件名)。  implementation  uses LZExpand;  procedure CopyFile(sFileName,dFileName:String);  var sFile,dFile:file;  begin   AssignFile(sFile,sFileName);   Reset(sFile);   AssignFile(dFile,dFileName);   Rewrite(dFile);  LZCopy(TFileRec(sFile).Handle,TFileRec  (dFile).Handle);  CloseFile(sFile);  CloseFile(dFile);  end;
      

  3.   

    Delphi中实现文件拷贝的三种方法 
    1.调用API函数
    procedure CopyFile(FromFileName,ToFileName:string);
    var
    f1,f2:file;
    Begin
    AssignFile(f1,FromFileName); file://指定源文件名
    AssignFile(f2,ToFileName); file://指定目标文件名
    Reset(f1);
    Try
    Rewrite(f2);
    Try
    If Lzcopy(TfileRec(f1).handle,TfileRec(f2).Handle)<0
    Then
    Raise EinoutError.creat('文件复制错误')
    Finally
    CloseFile(f2); file://关闭 f2
    End;
    Finally
    Until length(sLine)<=0;
    End;
    End; 
    2.文件流
    procedure copyfile;
    var f1,f2: tfilestream ;
    begin
    f1:=Tfilestream.Create(sourcefilename,fmopenread);
    try
    f2:=Tfilestream.Create(targetfilename,fmopenwrite or fmcreate);
    try
    f2.CopyFrom(f1,f1.size);
    finally
    f2.Free;
    end;
    finally
    f1.Free;
    end;
    end;3.利用内存块读写buffer实现
    Procudure FileCopy(const Fromfile,Tofile:string);
    Var
    F1,F2:file;
    NumRead,Numwritten:word;
    Buf:array [1..2048] of char;
    Begin
    AssignFile(F1,Fromfile);
    Reset(F1,1);
    AssignFile(F2,Tofile);
    Rewrite(F2,1);
    Repeat
    BlockRead(F1,buf,sizeof(buf),NumRead);
    BlockWrite(F2,buf,Numread,NumWritten);
    Until (NumRead=0) or (NumWritten<>NumRead);
    CloseFile(F1);
    CloseFile(F2);
    End;
      

  4.   

    报歉,上贴回的太快了。差个参数。
    现在改正:winexec('xcopy c:\windows\*.* d:\mywindows /y',sw_hide);//隐式运行 sw_show为显示运行