Actualizado el 14-01-2007
versión para imprimir
flist
flist( < ruta y máscara > [, < atributos >] )
Esta función devuelve una lista de archivos encontrados en la ruta indicada que coincidan con la máscara proporcionada. Admite como parámetro adicional (numérico) el atributo (propiedad) de los archivos a buscar.
La lista de resultados se devuelve en forma de array.
Ejemplos básicos
var array1 = new array();
array1 = flist("*.jpg"); // devuelve todos los archivos *.jpg
// en el directorio
array1 = flist("c:\\pictures\\*.png")); //devuelve todos los archivos
// png en c:/pictures
array1 = flist("*.*", 0x00000010); // Devuelve los subdirectorios
Que son los atributos
Todo archivo (o directorio) tiene atributos que indican la naturaleza del fichero, su estado, y las operaciones que pueden hacerse con él. Estos atributos, que dependen del sistema operativo, se expresan por medio de bitmask o mascaras:
- 0x00000001 - read-only
- 0x00000002 - hidden
- 0x00000004 - system
- 0x00000010 - directory
- 0x00000020 - ready to archive
- 0x00000040 - device
- 0x00000080 - normal
- 0x00000100 - temp
- 0x00000200 - sparse file
- 0x00000400 - reparse
- 0x00000800 - compressed file
- 0x00001000 - offline
- 0x00002000 - not indexed
- 0x00004000 - masked
- FILE_ATTRIBUTE_READONLY
- El archivo o directorio es de solo lectura.
- FILE_ATTRIBUTE_HIDDEN
- El archivo o directorio está oculto. No seria mostrado en un listado de archivos normal.
- FILE_ATTRIBUTE_DIRECTORY
- Se trata de un directorio.
- FILE_ATTRIBUTE_TEMPORARY
- Archivo temporal.
- FILE_ATTRIBUTE_COMPRESSED
- El archivo o directorio está comprimido.
- FILE_ATTRIBUTE_ARCHIVE
- El archivo o carpeta estan marcados como backup.
- FILE_ATTRIBUTE_ENCRYPTED
- Archivo o carpeta encriptada
- FILE_ATTRIBUTE_NORMAL
- El archivo o carpeta no tiene ningun otro atributo.
- FILE_ATTRIBUTE_OFFLINE
- Los datos del archivo no están disponibles por haber sido movidos.
- FILE_ATTRIBUTE_SYSTEM
- El archivo o carpeta son parte del sistema operativo o son usados unicamente por el SO.
El atributo se indica por su número, expresado en hexadecimal o su equivalente:
- 0x00000001 - 1 - read-only
- 0x00000002 - 2 - hidden
- 0x00000004 - 4 - system
- 0x00000010 - 16 - directory
Conclusión
flist es una herramienta imprescindible si necesitas tratar con archivos. Sin embargo es preciso usar con precaución los bitmask para filtrar archivos. Algunos de los atributos pueden no existir segun la version del sistema operativo (pues dependen del sistema de archivos empleado). El mejor sistema es confiar en la ruta/mascara de archivo pasado a la función y comprobar si acaso si los resultados son válidos con fstat o faccess.