Рассмотрим метод обхода дерева каталогов с помощью FindFirst и FindNext

Рассмотрим метод обхода дерева каталогов с помощью FindFirst и FindNext.

Используя процедуры FindFirst, FindNext перебираем все вхождения в каталог, и проверяем каждое из них — если это каталог, то входим в него и рекурсивно вызываем функцию обхода каталога.

Uses Dos; Procedure DirTree(path:string); var sr:searchrec; begin If path[length(path)]’\’ then path:=path+’\’; findfirst(path+’*.*’,AnyFile,sr); while (doserror=0) do begin if (sr.attr and directory) = directory then begin if (sr.name’.’) and (sr.name’..’) then DirTree(path+sr.name+’\’); end else begin writeln(path+sr.name); end; findnext(sr); end; end; begin DirTree(ParamStr(1)); end.

Понравилась статья? Поделиться с друзьями: