СообЧа > База Знаний > Программирование > Delphi

Вопрос

Необходимо реализовать полный перебор всех вложенных папок в указанной папке (т.е. все вложенные папки должны быть представлены в виде дерева, к примеру). Как это можно сделать?

Ответ

Простейший сканнер

Вот пример, который ищет мп3 файлы на жестком диске…

unit Audit1;
interface uses windos;
var dest:string;
procedure dorecurse(dir:string);
implementation {$R *.DFM} Procedure Process (dir:string; Searchrec:tsearchrec);
begin showmessage (Searchrec.name);
case Searchrec.attr of $10: if (searchrec.name<>'.') and (searchrec.name<>'..') then begin dorecurse (dir+'\'+searchrec.name);
writeln (dir);
end;
end;
end;
Procedure Dorecurse(dir:string);
var Searchrec:Tsearchrec;
pc: array[0..79] of Char;
begin StrPCopy(pc, dir+'\*.mp3');
FindFirst(pc, FaAnyfile, SearchRec);
Process (dir,SearchRec);
while FindNext(SearchRec)<>
-18 do begin Process (dir,SearchRec);
end;
end;
Procedure startsearch;
begin dorecurse (paramstr(1));
end;
begin startsearch;
end.


Из конференции Expert_FAQ



Copyright © 2000-2004 Сообщество Чайников
Контактная информация