8th
Сен

Как в указанной папке и её подпапках найти все файлы определённого типа?

Posted by Chas under Пост-обзор

код:

procedure DirSearch(Dir: string; Mask : string; SL: TStrings);
var
   SearchRec: TSearchRec;
begin
   Dir := IncludeTrailingBackslash(Dir);

   if FindFirst(Dir + ‘*.*’, faAnyFile, SearchRec) = 0 then
     repeat
       Application.ProcessMessages;

       if (SearchRec.Attr and faDirectory) 0 then begin
         if (SearchRec.name ‘.’) and (SearchRec.name ‘..’) then
                 DirSearch(Dir + SearchRec.name, Mask, sl)
       end
       else
         if MatchesMask(ExtractFileName(SearchRec.Name), Mask) then
           Sl.Add(Dir + SearchRec.Name);
     until FindNext(SearchRec) 0;
   FindClose(SearchRec);
end;

// ИСПОЛЬЗОВАТЬ ТАК:
procedure TForm1.Button1Click(Sender: TObject);
begin
   DirSearch(’C:\TEMP’, ‘*.AVI’, Memo1.Lines);
end;

Тема на форуме

Похожие статьи

Теги: |