Cómo: Crear una lista de directorios

Actualización: noviembre 2007

En el siguiente ejemplo de código se explica la forma de utilizar las clases de E/S para crear un listado de todos los archivos de un directorio que tienen la extensión ".exe".

Ejemplo

Option Explicit On 
Option Strict On
Imports System
Imports System.IO
Class DirectoryLister
    Public Shared Sub Main(ByVal args As String())
        Dim path As String = Environment.CurrentDirectory
        If (args.Length > 0) Then
            If File.Exists(args(0)) Then
                path = args(0)
            Else
                Console.WriteLine("{0} not found; using current directory:", _
                    args(0))
            End If
        End If
        Dim dir As New DirectoryInfo(path)
        Dim f As FileInfo
        For Each f In dir.GetFiles("*.exe")
            Dim name As [String] = f. Name
            Dim size As Long = f.Length
            Dim creationTime As DateTime = f.CreationTime
            Console.WriteLine("{0,-12:N0} {1,-20:g} {2}", size, creationTime, name)
        Next f
    End Sub
End Class
using System;
using System.IO;

class DirectoryLister
{
    public static void Main(String[] args)
    {
        string path = Environment.CurrentDirectory;
        if (args.Length > 0)
        {
            if (Directory.Exists(args[0]))
            {
                path = args[0];
            }
            else
            {
                Console.WriteLine("{0} not found; using current  directory:",
                    args[0]);
            }
        }
        DirectoryInfo dir = new DirectoryInfo(path);
        foreach (FileInfo f in dir.GetFiles("*.exe")) 
        {
            String name = f. Name;
            long size = f.Length;
            DateTime creationTime = f.CreationTime;
            Console.WriteLine("{0,-12:N0} {1,-20:g} {2}", size, 
                creationTime, name);
        }
    }

Programación eficaz

En este ejemplo, DirectoryInfo es el directorio actual, indicado con (".") y el código enumera todos los archivos del directorio actual que tienen la extensión .exe, junto con el tamaño de archivo, la hora de creación y el nombre. Suponiendo que hubiera archivos .exe en el subdirectorio \Bin de C:\MyDir, el resultado de este código tendría el aspecto siguiente:

953          7/20/2000 10:42 AM   C:\MyDir\Bin\paramatt.exe
664          7/27/2000 3:11 PM    C:\MyDir\Bin\tst.exe
403          8/8/2000 10:25 AM    C:\MyDir\Bin\dirlist.exe

Si desea obtener una lista de archivos contenidos en otro directorio, como su directorio raíz C:\, pase el argumento "C:\" al archivo ejecutable generado por la compilación de este código, por ejemplo: "testApplication.exe C:\".

Nota:

Los usuarios de Visual Basic pueden utilizar las propiedades y métodos proporcionados por el objeto My.Computer.FileSystem para la entrada y salida de archivos. Para obtener más información al respecto, vea My.Computer.FileSystem (Objeto).

Vea también

Tareas

Cómo: Leer y escribir en un archivo de datos recién creado

Cómo: Abrir y anexar a un archivo de registro

Cómo: Leer texto de un archivo

Cómo: Escribir texto en un archivo

Cómo: Leer caracteres de una cadena

Cómo: Escribir caracteres en una cadena

Conceptos

E/S de archivos básica

Referencia

DirectoryInfo

CreationTime

FullName

FileInfo.Length

DirectoryInfo.GetFiles