Olá galera, nesta Quick Tips, irei mostrar a nova Unit IOUtils do Delphi 2010, algumas funções mais utilizadas que temos nela.

 

Vamos começar pelo Record TDirectory, vamos criar uma variável Path do tipo string para podermos trabalhar com um único caminho

 

GetCreationTime

Descrição: Podemos verificar a data e hora que o diretório foi criado

 

Exemplo:

procedure TFrmPrincipal.BitBtn5Click(Sender: TObject);

Var

Directory: TDirectory;

Path: String;

begin

Path := 'D:\DevMedia';

ShowMessage(DateTimeToStr(Directory.GetCreationTime(Path)));

end;

 

GetLastAccessTime

Descrição: Podemos verificar a última data e hora que o diretório foi acessado.

 

Exemplo:

procedure TFrmPrincipal.BitBtn4Click(Sender: TObject);

Var

Directory: TDirectory;

Path: String;

begin

Path := 'D:\DevMedia';

ShowMessage(DateTimeToStr(Directory.GetLastAccessTime(Path)));

end;

 

GetDirectoryRoot

Descrição: Podemos verificar o diretório raiz.

 

Exemplo:

procedure TFrmPrincipal.BitBtn3Click(Sender: TObject);

Var

Directory: TDirectory;

Path: String;

begin

Path := 'D:\DevMedia';

ShowMessage(Directory.GetDirectoryRoot(Path));

end;

 

IsEmpty

Descrição: Podemos verificar se um diretório esta vazio ou não.

 

Exemplo:

procedure TFrmPrincipal.BitBtn2Click(Sender: TObject);

Var

Directory: TDirectory;

Path: String;

begin

Path := 'D:\DevMedia';

if Directory.IsEmpty(Path) then

ShowMessage('Diretório esta vazio')

else

ShowMessage('Diretório não esta vazio')

end;

 

GetFiles

Descrição: Podemos exibir os arquivos e pastas que temos dentro de um determinado diretório. Para este exemplo de uses em Types

 

Exemplo:

 

procedure TFrmPrincipal.BitBtn1Click(Sender: TObject);

Var

Directory: TDirectory;

Path: String;

S: TStringDynArray;

Lista: TStringList;

I: Integer;

begin

Path := 'D:\DevMedia';

Lista := TStringList.Create;

S := Directory.GetFiles(Path);

for I := 0 to Length(S) do

Lista.Add(S[I]);

ShowMessage(Lista.Text);

end;

 

Observe que GetFiles tem diversos outros métodos com o mesmo nome, porém com parâmetros diferentes.

 

class function GetFiles(const Path: string): TStringDynArray;

overload; inline; static;

class function GetFiles(const Path: string;

const Predicate: TFilterPredicate): TStringDynArray;

overload; inline; static;

class function GetFiles(const Path, SearchPattern: string): TStringDynArray;

overload; inline; static;

class function GetFiles(const Path, SearchPattern: string;

const Predicate: TFilterPredicate): TStringDynArray;

overload; inline; static;

class function GetFiles(const Path, SearchPattern: string;

const SearchOption: TSearchOption): TStringDynArray; overload; static;

class function GetFiles(const Path, SearchPattern: string;

const SearchOption: TSearchOption;

const Predicate: TFilterPredicate): TStringDynArray; overload; static;

class function GetFiles(const Path: string;

const SearchOption: TSearchOption;

const Predicate: TFilterPredicate): TStringDynArray; overload; static;

 

Fico por aqui ate à próxima Quick Tips.

 

Um abraço

 

Wesley Y

wyamazack@rwsolution.com.br