一句话复制整个文件夹,及目录相关

来源:互联网 发布:java float精度 编辑:程序博客网 时间:2024/05/20 13:36

使用的是 Delphi 2010 下 IOUtils 单元的 TDirectory.Copy 函数:


uses IOUtils;


procedure TForm1.Button1Click(Sender: TObject);
const
  SourceDir = 'C:\Temp\Folder1'; { 源文件夹必须存在 }
  DestDir = 'C:\Temp\Folder2';   { 如果目标文件夹不存在, 程序会自动创建 }
begin
  TDirectory.Copy(SourceDir, DestDir);
end;


GetLocaleDirectory(); GetLocaleFile();LocaleDirectoryExists();LocaleFileExists();


 {设置与获取当前路径}
  SetCurrentDir('C:\Temp\');
  ShowMessage(GetCurrentDir);         { C:\Temp }


  {获取当前目录下子目录的全路径}
  p := GetLocaleDirectory('ABC');
  ShowMessage(p);                     { C:\Temp\ABC\ }


  {获取当前目录下文件的全路径}
  f := GetLocaleFile('X.txt');
  ShowMessage(f);                     { C:\Temp\X.txt }
  f := GetLocaleFile('ABC\X.txt');
  ShowMessage(f);                     { C:\Temp\ABC\X.txt }


  {IOUtils 下的 TPath 也有类似功能}
  f := TPath.GetFullPath('X.txt');
  ShowMessage(f);                     { C:\Temp\X.txt }
  f := TPath.GetFullPath('ABC\X.txt');
  ShowMessage(f);                     { C:\Temp\ABC\X.txt }


  {判断当前文件夹下的文件或子文件夹是否存在}
  b := LocaleDirectoryExists('ABC'); //这相当于: DirectoryExists(GetCurrentDir + '\ABC');
  b := LocaleFileExists('X.txt');    //这相当于: FileExists(GetCurrentDir + '\X.txt');