ADSENSE

ADSENSE

Mostrando postagens com marcador todos os arquivos de um diretório. Mostrar todas as postagens
Mostrando postagens com marcador todos os arquivos de um diretório. Mostrar todas as postagens

terça-feira, 28 de fevereiro de 2012

Listar arquivos de diretórios


Boa Tarde .
Esta dica abaixo serve pra listar os arquivos de um determinado diretório, e seu sub diretórios.
Eu usei um ListBox pra listar os arquivos, mas fica a critério de cada um.

procedure TForm1.ListarArquivos(Diretorio: string; Sub:Boolean);

function TemAtributo(Attr, Val: Integer): Boolean;
begin
   Result := Attr and Val = Val;
end;

var
  F: TSearchRec;
  Ret: Integer;
  TempNome: string;
begin
   Ret := FindFirst(Diretorio+'\*.*', faAnyFile, F);
   try
      while Ret = 0 do begin
         if TemAtributo(F.Attr, faDirectory) then begin
            if (F.Name <> '.') and (F.Name <> '..') then
               if Sub = True then begin
                  TempNome := Diretorio+'\' + F.Name;
                  ListarArquivos(TempNome, True);
               end;
         end else begin
         ListBox1.Items.Add(Diretorio+'\'+F.Name);
      end;
      Ret := FindNext(F);
   end;
   finally
      FindClose(F);
   end;
end;