Вниз
Скачать: CL | DM;

Рекурсивный поиск   Найти похожие ветки 

← →
dizrov   (2004-08-06 12:43) [0]

Добрый день, ув. мастера!
Подскажите, пожалуйста, как сделать рекурсивный поиск в каталоге.
Если не трудно - киньте исходник.
Заранее спасибо.


← →
begin...end ©   (2004-08-06 12:46) [1]

http://www.delphimaster.ru/cgi-bin/faq.pl?look=1&id=1015254946&n=19


← →
dizrov   (2004-08-06 12:48) [2]

begin...end, спасибо огромное!


← →
syte_ser78 ©   (2004-08-06 12:50) [3]

Исходник на FP

Procedure SearchFiles(path,mask:string);
var sr:searchrec;
begin
 findfirst(path+"*.*",anyfile,sr);
 while doserror=0 do begin
   if (sr.attr and directory=directory) and
      (sr.name<>".") and (sr.name<>"..") then
     SearchFiles(path+sr.name+"\",mask);
   findnext(sr);
 end;
end;


← →
Mim1 ©   (2004-08-06 22:47) [4]

Для кучи
program test;
{$APPTYPE CONSOLE}
uses sysutils, Masks;

procedure Q(startdir:string; mask:string);
var
SearchRec : TSearchRec;
begin
if FindFirst(StartDir+"\*.*", faAnyFile, SearchRec) = 0 then
begin
  repeat
    if (SearchRec.Attr and faDirectory) = faDirectory then
      begin
        if (SearchRec.Name <> "..") and (SearchRec.Name <> ".") then
          q(startdir+"\"+SearchRec.Name,mask);
      end
    else
      if MatchesMask(SearchRec.Name,mask) then
        writeln(StartDir +"\"+ SearchRec.Name);
  until FindNext(SearchRec) <> 0;
  FindClose(SearchRec);
end;
end;
begin
 q("d:\mp3","*.mp3");
end.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.019 c
1-1092066260
new developer
2004-08-09 19:44
2004.08.22
Кодировка в Memo


3-1090972330
AleKo
2004-07-28 03:52
2004.08.22
Проверка на вхождение в операторе WHERE IN


11-1079260233
hammer
2004-03-14 13:30
2004.08.22
Вставка текста в memo


14-1091791513
Юрий Зотов
2004-08-06 15:25
2004.08.22
Переустановка Red Hat "по месту" - это возможно?


4-1089558357
Фёдор Мегатронов
2004-07-11 19:05
2004.08.22
Есть ли функция возвращающая размер фаила в инете ?




   Наверх