DIRECTORY( )

 Crea una matriz de información de directorios y de ficheros

Sintaxis

     DIRECTORY(, []) –> aDirectorio

Argumentos

identifica la unidad, el directorio y el fichero para la búsqueda en el directorio. Se permiten caracteres comodín en la especificación de fichero. Si se omite , el valor por defecto es *.*.

incluye en la información devuelta los ficheros que tengan los atributos especificados. es una cadena, que contiene uno o más de los caracteres siguientes:

     Atributos DIRECTORY()

     ————————————————————————

     Atributo     Significado

     ————————————————————————

     H            Incluir ficheros ocultos

     S            Incluir ficheros del sistema

     D            Incluir directorios

     V            Buscar la etiqueta de volumen del DOS y excluir el resto de

                  los ficheros

     ————————————————————————

Los ficheros normales siempre se incluyen en la búsqueda, a menos que especifique V.

Devuelve

DIRECTORY() devuelve una matriz de submatrices, cada una conteniendo información de cada fichero que cumpla la . La submatriz tiene la estructura siguiente:

     Estructura de Submatriz DIRECTORY()

     ————————————————————————

     Posición     Metasímbolo    Directry.ch

     ————————————————————————

     1            cNombre        F_NAME

     2            cTamaño        F_SIZE

     3            fFecha         F_DATE

     4            cHora          F_TIME

     5            cAtributos     F_ATT

     ————————————————————————

Si no se encuentran ficheros que coincidan con o si es una vía o una especificación de fichero ilegal, DIRECTORY() devuelve una matriz vacía ({}).

Descripción

DIRECTORY() es una función de entorno que devuelve información sobre los ficheros en el directorio actual o en el directorio especificado. Es similar a ADIR(), pero devuelve una sola matriz en lugar de añadir valores a una serie de matrices existentes pasadas por referencia.

Utilice DIRECTORY() para ejecutar acciones en grupos de ficheros. En combinación con AEVAL(), puede definir un bloque que puede aplicarse a todos los ficheros que cumplan la especificada.

El fichero de cabecera, Directry.ch, situado en el subdirectorio \DPXBASE5\INCLUDE contiene #defines para los subíndices de submatriz, a fin de mejorar la legibilidad de referencias a cada submatriz.

Ejemplos

     ¦  Este ejemplo crea una matriz de información sobre ficheros en el directorio actual y después se listan los nombres de los ficheros utilizando AEVAL() y QOUT():

     #include “Directry.ch”

        //

 

        aDirectorio := DIRECTORY(“*.*”, “D”)

        AEVAL( aDirectorio, {aFichero QOUT(aFichero[F_NAME])} )

Ficheros:  La biblioteca asociada es DPXBASE.CH, el fichero de cabecera es Directry.ch.