Wednesday, September 01, 2004

Calculando el tamaño de un directorio

Frecuentemente se pregunta en los foros como calcular el tamaño de un directorio. Esta es mi solución al problema:

DirectoryInfo di = new DirectoryInfo("C:\\MiDirectorio\\");

long tamaño = ObtenerTamañoDirectorioEnBytes(di);

...

public long ObtenerTamañoDirectorioEnBytes(DirectoryInfo d)

{

long tamañoDir = 0;

try

{

// Totalizar tamaño de archivos

FileInfo[] fis = d.GetFiles();

foreach (FileInfo fi in fis)

{

tamañoDir += fi.Length;

}

// Totalizar tamaño sub-directorios

DirectoryInfo[] dis = d.GetDirectories();

foreach (DirectoryInfo di in dis)

{

tamañoDir += ObtenerTamañoDirectorioEnBytes(di);

}

}

catch (Exception exp)

{

// Codigo para la excepcion va aqui

}

return tamañoDir;

}





0 Comments:

Post a Comment

<< Home