Вот мой алгоритм
| Код | procedure TForm1.FileFind(path: string); var sr:Tsearchrec;// Описываем структуру, которую использует для поиска система found,i:integer; // найдено или нет begin found:=FindFirst(path + '\*.*', FaAnyfile, sr); while (found = 0) do // если хоть что-то найдено begin if (sr.name <> '.') and (sr.name <> '..') then begin // если это не указатели на корневые каталоги, то чтото нашли if (sr.attr and FaDirectory) = FaDirectory then // ага вот поддиректория - вызываем себя рекурсивно, но с поиском уже в этой директории begin FileFind(path+'\'+sr.name); form1.memo1.lines.append(path+'\'+sr.name); end; end; found:=findnext(sr); // есть ли еще файлы или каталоги end; FindClose(sr); // поиск закончен - нужно освободить память end;
|
Скажите, пожалуйста как добавить сюда вложенность папок. Допустим, чтобы глубже 3 папке он другие не искал. |