delphi 删除文件  
官方Delphi 学习QQ群: 682628230(三千人)\n
频道

delphi 删除文件


delphi 删除文件

正如我们在之前的文章中看到的,如何移动、删除和复制文件夹,现在轮到文件了。


在本文中,我们将看到如何从 Delphi 中删除文件(Delphi 删除文件),为此我们将不得不使用System.SysUtils单元。


在 SysUtils 中,我们有DeleteFile函数,它从磁盘中删除一个文件(作为参数传递),但要小心,它会完全删除它,我们将无法恢复它。


这是一个非常容易使用的函数,我们只需要将文件的路径和名称作为参数传递,如果删除成功则返回True,否则返回False。


Delphi 函数 SysUtils.DeleteFile 的声明

Delphi中DeleteFile()函数的声明如下:


Uses

  System.SysUtils;

 

function DeleteFile(const FileName: string): Boolean;

从声明中可以看出,我们只有一个名为 FileName 的参数,它是字符串类型,我们将在其中传递要删除的文件的整个路径和名称。它将给我们一个布尔类型的结果,如果文件删除成功,则返回 True,如果发生错误,例如文件不再存在,则返回 False。


DeleteFile() 示例

以下示例删除位于驱动器“c:/file.txt”上的文件:


Uses

  System.SysUtils;

 

... 

 

procedure TForm1.Button1Click(Sender: TObject);

var

  FileName: string;

begin

  // Ruta y nombre del archivo a eliminar

  Filename:= 'c:/file.txt';

  // Verificamos primero si el archivo existe

  if FileExists(FileName) then

  begin

    // Preguntamos si quiere eliminar el archivo

    if MessageDlg(('Realmente desea eliminar el archivo ' + ExtractFileName(FileName) + '?'),

     TMsgDlgType.mtConfirmation, [TMsgDlgBtn.mbYes, TMsgDlgBtn.mbNo], 0, TMsgDlgBtn.mbNo) = IDYes then

    begin

      // Eliminamos el archivo

      if DeleteFile(FileName) then

        MessageDlg(('Se ha eliminado el archivo ' + ExtractFileName(FileName) + ' con éxito.'),

          TMsgDlgType.mtConfirmation, [TMsgDlgBtn.mbOK], 0)

      else

        MessageDlg(('Se ha producido un error al eliminar el archivo ' + ExtractFileName(FileName) + '.'),

          TMsgDlgType.mtConfirmation, [TMsgDlgBtn.mbOK], 0);

    end;

  end

  else

  begin

    // Mensaje de error si el archivo no existe

    MessageDlg(('El archivo ' + ExtractFileName(FileName) + ' no existe.'),

      TMsgDlgType.mtConfirmation, [TMsgDlgBtn.mbOK], 0);

  end;

end;




代码2:

del('C:\Users\Administrator\Desktop\delphi\wenjian\Win32\Debug\','*.txt');

//删除文件       目录           //文件名 可以有通配符    

procedure del(mulu : string ; f : string);

var

  SearchRec : TSearchRec;

begin

  //查找相应目录的指定文件  文件类型 any 存放查找结果

  if FindFirst(mulu+f, faAnyFile, SearchRec)=0 then

  begin

    repeat

       //修改文件属性为普通属性值  不然可能无法删除  

       FileSetAttr(mulu+SearchRec.Name,0);

       //删除文件  查找的结果会存放到 name

       DeleteFile(mulu+SearchRec.Name);

       //继续按查找第一个的条件查找下一个文件    

    until(FindNext(SearchRec)<>0);

  end;

  //释放内存

  FindClose(SearchRec);

end;

关于deletefile 这个函数 我引用的是 System.SysUtils  


还有一个是引用Winapi.Windows    功能一样  System.SysUtils  里的也是调用windows下的


System.SysUtils   传递的参数为string

Winapi.Windows  需要类型转换一下PChar(这里放的是string);

————————————————


原文链接:https://blog.csdn.net/qq_38204686/article/details/78530175



推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.044787168502808 seconds