Wolfgang Chien's Homepage | Delphi學習筆記 - 問答篇 |
我也是找了一個禮拜,找不到如何來COPY檔案。不過我的目的只是要把一個檔案從一個目錄搬到另外一個目錄之下。所以我用 RenameFile()就達成了。
![]() |
Delphi 2 最簡單的作法是直接呼叫 CopyFile 這個 API, 例如:
procedure TForm1.Button1Click(Sender: TObject); var sFromFileName, sToFileName: AnsiString; begin sFromFileName := 'd:\temp\l2.txt'; sToFileName := 'd:\temp\test1.txt'; if Windows.CopyFile(pchar(sFromFileName), pchar(sToFileName), False) then ShowMessage('檔案複製完成') else ShowMessage('發生錯誤: ' + IntToStr(GetLastError)); end; |
![]() |
其次, 應用 TFileStream 來作也是可以的, 以下是寫好的函數:
function StreamCopyFile(const sInFileName, sOutFileName: string): boolean; var InStream, OutStream: TFileStream; begin Result := False; InStream := TFileStream.Create(sInFileName, fmOpenRead or fmShareDenyWrite); try OutStream := TFileStream.Create(sOutFileName, fmCreate or fmOpenWrite); try OutStream.CopyFrom(InStream, 0); finally OutStream.Free; end; finally InStream.Free; end; Result := True; end; |
![]() |
不然, 自己用 BlockRead & BlockWrite 讀寫資料也可以吧! :p |
首頁 | 學習筆記 | 主題公園 | 軟體下載 | 關於本站 | 討論信群 | 相約下次 |