DIRECTORY()
 Cria um vetor com informaçoes sobre diretório e arquivo
------------------------------------------------------------------------------

 Sintaxe

     DIRECTORY(<cDirSpec>, [<cAtributos>]) --> aDiretorio

 Argumentos

     <cDirSpec> especifica o drive, diretório e arquivo para a pesquisa
     no diretório.  Caracteres do tipo coringa sao permitidos na
     especificaçao de arquivos.  Caso <cDirSpec> seja omitido, o valor
     padrao é *.*.

     <cAtributos> especifica que arquivos com atributos especiais devem
     ser incluidos na informaçao retornada.  <cAtributos> consiste em uma
     cadeia de caracteres que contém um ou mais dos seguintes
     caracteres:

     Tabela 5-12: Atributos de DIRECTORY()
     ------------------------------------------------------------------------
     Atributo             Significado
     ------------------------------------------------------------------------
     H                    Incluir arquivos ocultos
     S                    Incluir arquivos de sistema
     D                    Incluir diretórios
     V                    Procura pelo volume DOS e exclui outros arquivos
     ------------------------------------------------------------------------

     Arquivos normais sao sempre incluidos na pesquisa, a nao ser que V seja
     especificado.

 Retorno

     DIRECTORY() retorna um vetor de sub-vetores, sendo que cada sub-vetor
     contém informaçoes sobre cada arquivo que atenda a <cDirSpec>.  O
     sub-vetor tem a seguinte estrutura:

     Tabela 5-13: Estrutura dos Subvetores de DIRECTORY()
     ------------------------------------------------------------------------
     Posiçao           Metasímbolo          Directry.ch
     ------------------------------------------------------------------------
     1                 cNome                F_NAME
     2                 cTamanho             F_SIZE
     3                 dData                F_DATE
     4                 cHora                F_TIME
     5                 cAtributos           F_ATT
     ------------------------------------------------------------------------

 Descriçao

     DIRECTORY() é uma funçao de tratamento de ambiente que retorna
     informaçoes a respeito dos arquivos no diretório corrente ou
     especificado.  É semelhante a ADIR(), porém retorna um único vetor ao
     invés de adicionar valores a uma série de vetores existentes passados
     por referência.

     DIRECTORY() pode ser utilizada para realizar operaçoes em conjuntos de
     arquivos.  Em combinaçao com AEVAL(), você pode definir um bloco que
     pode ser aplicado a todos os arquivos que atendam a <cDirSpec>
     especificada.

     Para tornar as referências aos vários elementos de cada sub-vetor de
     arquivo mais legíveis, é fornecido o arquivo header Directry.ch, que
     contém os #defines para os subarray subscripts.  Ele está localizado em
     \CLIPPER5\INCLUDE.

 Exemplos

     O exemplo a seguir cria um vetor com informaç´es a respeito dos
     arquivos no diretório corrente e depois relaciona os nomes dos arquivos
     utilizando AEVAL() e QOUT():

     #include "Directry.ch"
     //
     aDirectory := DIRECTORY("*.*", "D")
     AEVAL( aDirectory, {|aFile| QOUT(aFile[F_NAME])} )

 Arquivos:  Biblioteca CLIPPER.LIB, arquivo header Directry.ch.
 To download this example - click here.

See Also: AEVAL() CURDIR()