function TForm1.EmptyDirectory(TheDirectory:String;Recursive:Boolean):Boolean; var SearchRec : TSearchRec; Res : Integer; begin Res := FindFirst(TheDirectory + '*.*', faAnyFile, SearchRec); try while Res = 0 do begin if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then begin if ((SearchRec.Attr and faDirectory) > 0) and Recursive then begin EmptyDirectory(TheDirectory + SearchRec.Name, True); RemoveDirectory(PChar(TheDirectory + SearchRec.Name)); end else begin DeleteFile(PChar(TheDirectory + SearchRec.Name)) end; end; Res := FindNext(SearchRec); end; Result := True; finally FindClose(SearchRec); end; end;
procedure TForm1.Button3Click(Sender: TObject); begin if EmptyDirectory('C:\aa\',True) then showmessage('文件夹已清空'); end;