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

Вниз

Как составить список всех файлов в папке(включая вложенные).   Найти похожие ветки 

 
Dmittry   (2002-11-11 20:57) [0]

Народ! Как создать список файлов находяшихся в указанной папке, так же включая файлы, которые лежат во вложенных папках и тд. тд.


 
Damage   (2002-11-11 22:16) [1]

Примерно так

Files : TStringList
...
Procedure TForm1.FindAll(Const Path,Mask : String);
Var
F : TSearchRec;
i : Integer;
Res : Integer;
Begin
//PROCESS CURRENT FOLDER

Res:=FindFirst(Path + "\" + Mask,faAnyFile,F);
While Res = 0 Do
Begin
Files.Add(Path + "\" + F.Name);
Res:=FindNext(F);
End;

FindClose(F);

//PROCESS SUBFOLDERS
Res:=FindFirst(Path + "\" + "*.*",faDirectory,F);
While Res = 0 Do
Begin
If (F.Attr = faDirectory) AND (F.Name[1] <> ".") Then
FindAll(Path + "\" + F.Name,Mask);
Res:=FindNext(F);
End;
FindClose(F);
End;


 
Poirot ©   (2002-11-11 22:31) [2]

А вот это универсальнее и на всю глубину вложенности....
Создаёт дерево и потом можно самому пройтись и найти файлы или моднуть сорец и прям в нём добавлять.... этот кусок почти из прроги и создаёт тока дерево, а файлы нет... просто некрасиво если с файлами... они вперемешку с папками....
procedure Dir(Path:TFileName;TT:TTreeNode);
var C:TsearchRec;
Z:Integer;
A:TTreeNode;
begin
Z:=FindFirst(Path+"\*.*",faDirectory,C);
if Z=0 then
begin
if Pos(".",c.Name)=1 then Z:=FindNext(c);
if Z<>0 then Exit;
Form1.LB.Items.Add(Path);
A:=Form1.TV.Items.AddChild(TT,Copy(Path,LPos("\",Path)+1,255));
A.OverlayIndex:=2;
if (C.Attr and faDirectory <> 0) and (C.Name<>"..")
then Dir(Path+"\"+C.Name,A);
repeat
Z:=FindNext(c);
if Z=0 then
if (C.Attr and faDirectory <>0)and (C.Name<>"..")
then Dir(Path+"\"+C.Name,A);
until Z<>0;
end;
FindClose(C);
end;




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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
1-69253
Осирис
2002-11-11 17:42
2002.11.21
Спрятать приложение из TaskBar а


6-69465
Gregson
2002-07-25 19:26
2002.11.21
Нужна помощь с сокетами


8-69451
Wild
2002-07-23 09:12
2002.11.21
Texture vs. LightSource


1-69263
iguana
2002-11-11 20:10
2002.11.21
ламерский вопрос


1-69441
kingdom
2002-11-11 14:21
2002.11.21
Как скролить TMemo