Buscador

Manipulación de directorios mediante las clases Directory y DirectoryInfo - III

En el siguiente ejemplo, el método GetDirectories( ) devuelve un array de cadenas, con los nombres de los subdirectorios que se encuentran dentro del directorio pasado como parámetro a este método. A continuación, mediante el método Move( ), cambiamos de lugar un directorio; con Delete( ) borramos otro de los directorios. Observe el lector, cómo utilizando de forma combinada CType( ), Directory.GetFiles( ), y un elemento del array que contiene la lista de directorios, creamos una expresión que nos permite averiguar, si en un determinado directorio hay o no archivos. 

Ver el Código fuente 380.

Dim sNombreDir As String
Dim oDirInfo As DirectoryInfo
Dim sDirectorios() As String
Dim sDirectorio As String
Console.WriteLine("Introducir un nombre de directorio")
sNombreDir = Console.ReadLine()
' obtener directorios del directorio especificado
= Directory.GetDirectories(sNombreDir)
' comprobar que el directorio contiene a su vez
' varios directorios; en caso negativo, finalizar
If Not (sDirectorios.Length > 1) Then
Console.WriteLine("El directorio especificado debe contener al menos dos
subdirectorios")
Console.ReadLine()
Exit Sub
End If
' mostrar nombres de directorios
For Each sDirectorio In sDirectorios
Console.WriteLine(sDirectorio)
Next
' mover uno de los directorios a otra ubicación del disco actual
Directory.Move(sDirectorios(0), "\temp\BIS")
' borrar otro de los directorios;
' el directorio a borrar debe estar vacío;
' comprobar con la siguiente expresión si dicho
' directorio contiene o no archivos
If (CType(Directory.GetFiles(sDirectorios(1)), String()).Length() > 0) Then
Console.WriteLine("No se puede borrar el directorio: {0} - " & _
"contiene archivos", sDirectorios(1))
Else
Directory.Delete(sDirectorios(1))
End If
Console.WriteLine("Completado")
Console.ReadLine()
Código fuente 380

No hay comentarios:

Publicar un comentario