Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.07.24;
Скачать: CL | DM;

Вниз

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

 
cyberwolf ©   (2003-07-11 00:17) [0]

Необходима функция рекурсивного обхода директории с выводом её содержимого. Заранее спасибо.


 
Makhanev A.S. ©   (2003-07-11 00:19) [1]

FindFirst, FindNext... F1


 
cyberwolf ©   (2003-07-11 00:33) [2]

это я знаю... нужна-то функция, которая выводит уже готовый результат... саммому лень писать - мож у кого есть?


 
dataMaster ©   (2003-07-11 01:14) [3]

Кажется так:

procedure ScanDir(StartDir: string; Mask:string; List:TStrings);
{
Пример вызова, параметры
1. имя папки
2. маска, по умолчанию *.*
3. хранилище для резульатат,
любой наследник от TString, например TStringList
}

var
SearchRec : TSearchRec;
begin
if Mask = "" then
Mask := "*.*";
if StartDir[Length(StartDir)] <> "\" then
StartDir := StartDir + "\";
if FindFirst(StartDir+Mask, faAnyFile, SearchRec) = 0 then
begin
repeat
Application.ProcessMessages;
if (SearchRec.Attr and faDirectory) <> faDirectory then
List.Add(StartDir + SearchRec.Name)
else
if (SearchRec.Name <> "..") and (SearchRec.Name <> ".") then
begin
List.Add(StartDir + SearchRec.Name + "\");
ScanDir(StartDir + SearchRec.Name+ "\",Mask,List);
end;
until FindNext(SearchRec) <> 0;
FindClose(SearchRec);
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
ListBox1.Items.Clear;
ScanDir("c:","",ListBox1.Items);
Label1.Caption := IntToStr(ListBox1.Items.Count);
end;


 
Makhanev A.S. ©   (2003-07-11 01:21) [4]

http://delphibase.endimus.com/?action=viewfunc&topic=fileops&id=10046



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

Текущий архив: 2003.07.24;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.026 c
14-78120
Ihor999
2003-07-08 16:05
2003.07.24
HTML парсер.


8-78012
MrN
2003-03-29 19:40
2003.07.24
Звуковые кодеки


14-78133
MetalFan
2003-07-09 09:56
2003.07.24
рисование блок-схем


6-78037
MegaVolt
2003-05-14 12:38
2003.07.24
Как закрыть сеанс после работы в локальной сети?


3-77799
Alex_x
2003-07-03 11:30
2003.07.24
QuantumGrid4