Карта сайтаСсылкиКонтакты

Удаление пустых каталогов в Delphi

PDF Печать
Статьи

Простая функция в Delphi для удаления пустых каталогов получает имя каталога и удаляет все пустые каталоги/подкаталоги любого уровня вложенности.


function RemoveEmptyFolders(const rootFolder: string): boolean;
var
  iRet: integer;
  bRemove: boolean;
  sr: TSearchRec;
begin
  RemoveEmptyFolders := False;
  bRemove := True;
  iRet := FindFirst(rootFolder + '\*.*', faAnyFile, sr) ;
  while (iRet = 0) do begin
    if (sr.Name[1] <> '.') then begin
      if (sr.Attr and faDirectory) <> 0 then begin
        if not RemoveEmptyFolders(rootFolder + '\' + sr.Name) then bRemove := False;
      end else begin
        bRemove := False;
      end;
    end;
    iRet := FindNext(sr) ;
  end;
  FindClose(sr) ;
  if bRemove then RemoveEmptyFolders := RemoveDir(rootFolder) ;
end;

 

Добавить комментарий


Защитный код
Обновить