Listar los subdirectorios de un directorio

Valoración del artículo:
Taller de ASP para listar todas las carpetas del directorio raíz del disco duro en ASP.
Publicado: 23/9/03
Atención: Contenido exclusivo de DesarrolloWeb.com. No reproducir. Copyright.
Vamos a hacer un ejemplo de acceso al directorio raíz de nuestro disco duro para listar cada una de las carpetas que contiene y alguna de sus propiedades.

<%
'Conecto con el sistema de archivos
set FSO = server.createObject("Scripting.FileSystemObject")
'creo el objeto disco C:
set discoC = FSO.GetDrive("c")
'Tomo el directorio raiz
set raiz = discoC.rootFolder
'extraigo la coleccion de carpetas
set coleccionCarpetas = raiz.subFolders

'para cada carpeta imprimo su nombre y su camino completo desde la raiz
for each carpeta in coleccionCarpetas
    response.write "<b>Carpeta " & carpeta.name & "</b>:<br>"
    response.write "Path: " & carpeta.path
    response.write ", Nombre corto: " & carpeta.ShortName
    response.write ", Atributos: " & carpeta.Attributes
    response.write "<p>"
next
%>


El ejemplo se realiza accediendo a través del método GetDrive() del FSO, para obtener la unidad C. Luego, de la unidad obtenida se extrae el directorio raíz, a través de la propiedad RootFolder del objeto Drive. RootFolder es ya un objeto Folder y como tal tiene una colección de subcarpetas en su propiedad SubFolders.

A la colección de subcarpetas de nuestro directorio raíz se le hace un recorrido con un bucle FOR EACH. Para cada carpeta se escribe su nombre, seguido de la ruta completa hasta la carpeta, el nombre corto que tendría en un sistema MS-DOS y sus atributos.

La numeración de los atributos es a base de potencias de dos, así, el atributo 17 quiere decir que tiene los atributos 16 y 1 (2 elevado a 4 y 2 elevado a 0). En castellano: un directorio de solo lectura.

En este ejemplo ya se empieza a ver la navegación por el sistema de ficheros, aunque sólo nos hayamos quedado a nivel de carpetas. El esquema es el comentado anteriormente:

FSO > GetDrive() (para obtener una unidad) > RootFolder (para obtener la carpeta raíz de una unidad > Subfolders (para obtener la lista de subcarpetas del directorio, en este caso el raíz).

Comentarios
Fue enviado 1 comentario al artículo
1 comentario no revisado
0 comentarios revisados

Manuales relacionados
Categorias relacionadas
El autor
Lectura recomendada
Compra este libro en Agapea, la librería urgente a domicilio.
Últimas noticias
Alojados en el grupo