Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Composition Setup
import.css=/download/attachments/6062824/tecnologia.css
Portuguese

Pagetitle
Directory

...

...

...

Directory

Cria um array bidimensional com o conteúdo de um diretório.
Para isso, retorna informações a respeito dos arquivos no diretório corrente ou especificado. Essa função é semelhante a ADir(), porém, retorna um único array ao invés de adicionar valores a uma séria de arrays existentes passados por referência.

Sintaxe

 

Sintaxe
Bloco de código
collapsefalse
Directory( <
cDirEsp>
 cDirEsp >, [ cAtributos ], [
xParam3
 uParam1 ], [ lCaseSensitive ], [ nTypeOrder ] )
--> aRet

Parâmetros

...

Nome

Tipo

Descrição

Obrigatório

Referência

cDirEsp

...

caractere

Indica o diretório que será pesquisado e os arquivos que serão apresentados. Além disso, caracteres do tipo curinga são permitidos na especificação de arquivos. Caso esse parâmetro não seja especificado, o valor padrão é *.*.

X

 

cAtributos

...

caractere

Indica quais arquivos com atributos especiais devem ser incluídos no array. Esse parâmetro consiste em uma string que contém um ou mais dos caracteres H, S, D e V. Para mais detalhes, consulte a tabela A na área Observações.

 

 

...

uParam1

...

numérico

Parâmetro de compatibilidade. Passar Nil.

 

 

lCaseSensitive

...

lógico

Indica se, verdadeiro (.T.), o nome do arquivo será transformado para letra maiúscula; caso contrário, falso (.F.), o nome do arquivo será retornado conforme escrito no disco rígido.

 

 

nTypeOrder

numérico

Indica o tipo de ordenação do resultado da função.

 

 

Retorno

Nome

Tipo

Descrição

aRet

...

vetor

...

Retorna um array de subarrays, sendo que cada subarray contém informações sobre cada arquivo que atenda o parâmetro (<cDirSpec>). Para mais detalhes, consulte a tabela B na área Observações.

Observações

...

...

Atenção!

...

Quando executado via SmartClient HTML, o sistema não tem acesso aos arquivos da estação/cliente (Remote).

Tabela A -

...

Atribuições de Directory()

...

...

Atribuito

Significado

H

Incluir arquivos ocultos

S

Incluir arquivos de sistema

D

Incluir diretórios

V

Procura pelo volume DOS e exclui outros arquivos

...

Importante
Arquivos normais são sempre incluídos na pesquisa, a não ser que "V" seja especificado.

 

 

Tabela B - Estrutura dos subarrays

...

Posição

...

Meta simbolo

...

directory.ch

...

1

cNome

F_NAME

...

2

cTamanho

F_SIZE

...

3

dData

F_DATE

...

4

cHora

F_TIME

...

5

cAtributos

F_ATT

  • Caso seja especificado um path sem a unidade de disco, o mesmo será considerado no ambiente do servidor, a partir do RootPath do ambiente (caso o path comece com \ ou /), ou a partir do StartPath do ambiente (caso o path não seja iniciado com \ ou /).
  • Quando um path absoluto é especificado (com unidade de disco preenchida), a função será executada na estação em que o SmartClient está em execução.
  • O tipo de ordenação pode ser definido conforme tabela:

Parâmetro

Tipo de ordenação

1

Ordenar por nome do arquivo

2

Ordenar por data do arquivo

3

Ordenar por tamanho do arquivo

  • Essa função pode ser utilizada para realizar operações em conjuntos de arquivos. Ao utilizar essa função em conjunto com AEVal(), é possível definir um bloco de código que pode ser aplicado a todos os arquivos que atendam ao parâmetro especificado.
  • Para tornar as referências aos vários elementos de cada subarray de arquivo mais legíveis, a linguagem AdvPL fornece o arquivo header Fileio.ch, que contém os #DEFINES para os subarrays subscripts.

Exemplos

Local aFiles := {}
  
Local nX
  local nCount := Len( aFiles )
  aFiles := Directory("c:\garbage\*.*", "D")
  For nX := 1 to nCount 

      ConOut('Arquivo: ' + aFiles[nX,1] + ' - Size: ' + AllTrim(Str(aFiles[nX,2])) )
  Next nX

Return


#INCLUDE "
Directry
Fileio.ch"
User Function Exemplo2()
  aDirectory := DIRECTORY("*.*", "D")
  AEVAL(aDirectory, {|aFile| CONOUT(aFile[F_NAME])} )

 

 

Return
Bloco de código
languagecpp
themeEclipse
titleExemplo 1
linenumberstrue
collapsefalse
User Function Exemplo1()
  

 

 

Bloco de código
themeEclipse
languagecpp
titleExemplo
linenumberstrue
Bloco de código
themeEclipse
languagecpp
titleExemplo
linenumberstrue

Abrangência

Advanced Protheus 6.09 , Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Protheus 10 , TOTVS Application Server 10 , ByYou Application Server

Veja

...

também

...

 

 

...