Главная страница
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.02 c
1-77932
OlegNOE
2003-07-10 15:30
2003.07.24
Рамка вокруг ячейки


14-78153
Карелин Артем
2003-07-09 13:26
2003.07.24
Оба-на.


1-77893
Ткаченко Сергей
2003-07-14 10:08
2003.07.24
Проблема со шрифтами


1-77890
stimm
2003-07-13 21:00
2003.07.24
Размер файла в байтах без FileSize


9-77707
Карлсон
2002-12-21 21:26
2003.07.24
подлодки....