.NET : Obter o tamanho de um diretório com o .NET
Dica publicada pelo pessoal da BufaloInfo.
Não há ainda, nas classes do framework, um meio de obter o tamanho total de um diretório. Por isso o tamanho total de um diretório deve ser obtido pela soma do tamanho de seus arquivos e diretórios, da seguinte forma :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | public static long Size(System.IO.DirectoryInfo dirInfo) { long total = 0; // Obtem o tamanho total dos arquivos no diretório foreach(System.IO.FileInfo file in dirInfo.GetFiles()) total += file.Length; // Obtem o tamanho total dos sub-diretórios da pasta foreach(System.IO.DirectoryInfo dir in dirInfo.GetDirectories()) total += Size(dir); return total; } |
É interessante observar que esta função é recursiva : Ao encontrar uma pasta a função chama a si mesma para poder calcular o tamanho da pasta e desta forma somar ao tamanho total.
No link abaixo há uma explicação mais detalha sobre Recursividade e os cuidados a considerar em seu uso:

23 Convidados
3 Bots
Leave a Reply
You must be logged in to post a comment.