// dirsize.cs using System; using System.IO; public class DirectorySize { static void Main() { string path = @"c:\Inetpub"; DirectoryInfo di = new DirectoryInfo(path); long dirSize = GetDirectorySize(di); Console.WriteLine(dirSize); } static long GetDirectorySize(DirectoryInfo dirInfo) { long size = 0; foreach (FileInfo fi in dirInfo.GetFiles()) { size += fi.Length; } foreach (DirectoryInfo di in dirInfo.GetDirectories()) { size += GetDirectorySize(di); // 再帰呼び出し } return size; } } // コンパイル方法:csc dirsize.cs