delphi 删除文件

function   TMainForm.DeleteDirectory(NowPath:   string):   Boolean;   //删除整个目录  
  var  
      search:   TSearchRec;  
      ret:   integer;  
      key:   string;  
  begin  
      if   NowPath[Length(NowPath)]   <>   '/'   then  
          NowPath   :=   NowPath   +   '/';  
      key   :=   Nowpath   +   '*.*';  
      ret   :=   findFirst(key,   faanyfile,   search);  
      while   ret   =   0   do   begin  
          if   ((search.Attr   and   fadirectory)   =   faDirectory)  
              then   begin  
              if   (Search.Name   <>   '.')   and   (Search.name   <>   '..')   then  
                  DeleteDirectory(NowPath   +   Search.name);  
          end   else   begin  
              if   ((search.attr   and   fadirectory)   <>   fadirectory)   then   begin  
                  deletefile(NowPath   +   search.name);  
              end;  
          end;  
          ret   :=   FindNext(search);  
      end;  
      findClose(search);  
      removedir(NowPath);  //这个是删除本文件夹的 
      result   :=   True;  
  end;

 

 

 

 

简单的办法:  
  用TFileListBox控件,Directory=ADir,  
  for   i   :=   0   to   FileListBox1.Items.Count   -   1   do   begin  
      DeleteFile(PChar(FileListBox1.Items[i]));  
  end;  
   
  其实就是一个一个删除目录里的文件,也可以自己写代码获得目录里的所有文件,  
  如果有子目录,可以用递归的方法删除

你可能感兴趣的:(function,String,Integer,search,Delphi)