Con el modelo de objetos FileSystemObject (FSO), puede trabajar con unidades y carpetas mediante programas igual que puede hacerlo interactivamente desde el Explorador de Windows. Puede copiar y mover carpetas, obtener información acerca de unidades y carpetas, etc.
El objeto Drive le permite obtener información acerca de las diversas unidades conectadas al sistema físicamente o a través de una red. Sus propiedades le permiten obtener información acerca de:
Vea el código de ejemplo para ver cómo se utilizan estas propiedades en FileSystemObject.
Utilice el objeto Drive para reunir información acerca de una unidad. No verá una referencia a un objeto Drive real en el código siguiente; en su lugar, utilice el método GetDrive para obtener una referencia a un objeto Drive existente (en este caso, drv).
El ejemplo siguiente demuestra cómo utilizar el objeto Drive:
[VBScript] Sub ShowDriveInfo(drvPath) Dim fso, drv, s Set fso = CreateObject("Scripting.FileSystemObject") Set drv = fso.GetDrive(fso.GetDriveName(drvPath)) s = "Unidad " & UCase(drvPath) & " - " s = s & drv.VolumeName & "<br>" s = s & "Espacio total: " & FormatNumber(drv.TotalSize / 1024, 0) s = s & " Kb" & "<br>" s = s & "Espacio libre: " & FormatNumber(drv.FreeSpace / 1024, 0) s = s & " Kb" & "<br>" Response.Write s End Sub [JScript] function ShowDriveInfo1(drvPath) { var fso, drv, s =""; fso = new ActiveXObject("Scripting.FileSystemObject"); drv = fso.GetDrive(fso.GetDriveName(drvPath)); s += "Unidad " + drvPath.toUpperCase()+ " - "; s += drv.VolumeName + "<br>"; s += "Espacio total: " + drv.TotalSize / 1024; s += " Kb" + "<br>"; s += "Espacio libre: " + drv.FreeSpace / 1024; s += " Kb" + "<br>"; Response.Write(s); }
Las tareas comunes de carpetas y los métodos para realizarlas se describen en la tabla siguiente.
Tarea | Método |
---|---|
Crear una carpeta. | FileSystemObject.CreateFolder |
Eliminar una carpeta. | Folder.Delete o FileSystemObject.DeleteFolder |
Mover una carpeta. | Folder.Move o FileSystemObject.MoveFolder |
Copiar una carpeta. | Folder.Copy o FileSystemObject.CopyFolder |
Recuperar el nombre de una carpeta. | Folder.Name |
Averiguar si existe una carpeta en una unidad. | FileSystemObject.FolderExists |
Obtener una instancia de un objeto Folder existente. | FileSystemObject.GetFolder |
Averiguar el nombre de la carpeta primaria de una carpeta. | FileSystemObject.GetParentFolderName |
Averiguar la ruta de las carpetas del sistema. | FileSystemObject.GetSpecialFolder |
Consulte el código de ejemplo para ver cómo se utilizan muchos de estos métodos y propiedades en FileSystemObject.
El ejemplo siguiente demuestra cómo utilizar los objetos Folder y FileSystemObject para tratar las carpetas y obtener información acerca de ellas:
[VBScript] Sub ShowFolderInfo() Dim fso, fldr, s ' Obtener instancia de FileSystemObject. Set fso = CreateObject("Scripting.FileSystemObject") ' Obtener objeto Drive. Set fldr = fso.GetFolder("c:") ' Imprimir nombre de la carpeta primaria. Response.Write "El nombre de la carpeta primaria es: " & fldr & "<br>" ' Imprimir nombre de la unidad. Response.Write "Se encuentra en la unidad " & fldr.Drive & "<br>" ' Imprimir nombre del archivo raíz. If fldr.IsRootFolder = True Then Response.Write "Esta es la carpeta raíz." & ""<br>"<br>" Else Response.Write "Esta carpeta no es una carpeta raíz." & "<br><br>" End If ' Crear una carpeta nueva con el objeto FileSystemObject. fso.CreateFolder ("C:\Bogus") Response.Write "Carpeta creada C:\Bogus" & "<br>" ' Imprimir el nombre base de la carpeta. Response.Write "Nombre base = " & fso.GetBaseName("c:\bogus") & "<br>" ' Eliminar la carpeta recién creada. fso.DeleteFolder ("C:\Bogus") Response.Write "Carpeta eliminada C:\Bogus" & "<br>" End Sub [JScript] function ShowFolderInfo() { var fso, fldr, s = ""; // Obtener instancia de FileSystemObject. fso = new ActiveXObject("Scripting.FileSystemObject"); // Obtener objeto Drive. fldr = fso.GetFolder("c:"); // Imprimir nombre de carpeta primaria. Response.Write("El nombre de la carpeta primaria es: " + fldr + "<br>"); // Imprimir nombre de la unidad. Response.Write("Se encuentra en la unidad" + fldr.Drive + "<br>"); // Imprimir nombre del archivo raíz. if (fldr.IsRootFolder) Response.Write("Esta es la carpeta raíz."); else Response.Write("Esta carpeta no es una carpeta raíz."); Response.Write("<br><br>"); // Crear una carpeta nueva con el objeto FileSystemObject. fso.CreateFolder ("C:\\Bogus"); Response.Write("Carpeta creada C:\\Bogus" + "<br>"); // Imprimir el nombre base de la carpeta. Response.Write("Nombre base = " + fso.GetBaseName("c:\\bogus") + "<br>"); // Eliminar la carpeta recién creada. fso.DeleteFolder ("C:\\Bogus"); Response.Write("Carpeta eliminada C:\\Bogus" + "<br>"); }
Ayuda de Javascript y Vbscript para Javascripts.astalaweb.com. |