![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
рекурсия [D7, Win2k]
bang © (2004-08-20 17:35:00)Ув. мастера, подскажите мне, незнающему, как сделать рекурсивный поиск файлов по маске в директории и найденные имена файлов добавить в список? Заранее спасибо и извините если некорректно задал вопрос.
Mim1 (2004-08-20 19:34:00) [1]
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.
bang (2004-08-20 19:22:00) [2]Нашел!!! Это то, что нужно!
http://www.torry.net/vcl/filedrv/search/teasyfilesearch.zip
bang (2004-08-20 19:08:00) [3]Пример хороший, только если фильтр будет *.txt, например, никакой рекурсии не будет :(
Суслик (2004-08-20 17:37:00) [4]http://www.delphimaster.ru/cgi-bin/faq.pl?look=1&id=1015254946&n=19