Varrer um diretório.... Como Fazer?

18/12/2003

2

Tenho uma dúvida...
Queria saber como faço para varrer um diretório, saber quais arquivo estão dentro do mesmo, arquivos de uma extensão pré - definida, por exemplo txt. Alguem sabe com fazer? Acho não deve ser muito dificil....


Responder

Posts

18/12/2003

Cebikyn

Use este procedimento:

procedure GetAllFiles(mask: string);
var
  search   : TSearchRec;
  directory: string;
begin
  directory := ExtractFilePath(mask);

  if FindFirst(mask, $23, search) = 0 then begin
    repeat
      ListBox1.Items.Add(directory + search.Name); // <--
    until FindNext(search) <> 0;
  end;

  if FindFirst(directory + ´*.*´, faDirectory, search) = 0 then begin
    repeat
      if((search.Attr and faDirectory)=faDirectory)and(search.Name[1]<>´.´)then
        GetAllFiles(directory + search.Name + ´\´ + ExtractFileName(mask));
    until FindNext(search) <> 0;
    FindClose(search);
  end;
end;

Note que na linha marcada ocorre a manipulação dos arquivos, no caso, os arquivos são colocados em um ListBox.

Exemplo:

GetAllFiles(´C:\Textos\*.txt´);



Responder

19/12/2003

Daniels10

Muito Obrigado..


Responder