Quick Tip : Listar subdiretorios de um Diretório
Veja nesta Quick como listar os subdiretorios de um diretório
Olá galera, nesta Quick Tips, irei mostrar como listar os subdiretorios encontrados em um diretório.
Nossa rotina precisa de dois parâmetros para funcionar, o caminho do diretório que desejamos verificar os arquivos e uma lista de Strings, um Memo por exemplo ou um ListBox.
procedure TFrmPrincipal.ListarSubDiretorio(const sDirInicial: string; slt: TStrings
var
xsrSearch: TSearchRec;
xSearchPath: string;
sltSub: TStrings;
i: Integer;
begin
sltSub := TStringList.Create;
slt.BeginUpdate;
try
xSearchPath := sDirInicial;
if FindFirst(xSearchPath + '*', faDirectory, xsrSearch) = 0 then
repeat
if ((xsrSearch.Attr and faDirectory) = faDirectory) and (xsrSearch.Name <> '.') and (xsrSearch.Name <> '..') then
begin
slt.Add(xSearchPath + xsrSearch.Name);
sltSub.Add(xSearchPath + xsrSearch.Name);
end;
until (FindNext(xsrSearch) <> 0);
FindClose(xsrSearch);
for i := 0 to sltSub.Count - 1 do
ListarSubDiretorio(sltSub.Strings[i], slt);
finally
slt.EndUpdate;
FreeAndNil(sltSub);
end;
end;
No onClick de um BitBtn
procedure TFrmPrincipal.BtnListarDiretorioClick(Sender: TObject);
begin
Memo1.Lines.Clear;
ListarSubDiretorio(EdtPasta.Text, Memo1.Lines)
end;
Fico por aqui ate à próxima Quick Tips.
Um abraço
Wesley Y
wyamazack@rwsolution.com.br
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo