private void GetCounts() { IList <string> directories = GetDirectoriesForCounts(); foreach (string directory in directories) { dispOut.Events.Add(Messages.GETTING_COUNTS + directory); IOStats stats = GetDirectoryCounts(directory); dispOut.Events.Add(Messages.FILE_COUNT_LABEL + stats.FileCounts.ToString()); dispOut.Events.Add(Messages.DIRECTORY_COUNT_LABEL + stats.DirectoryCounts.ToString()); } }
private IOStats GetDirectoryCounts(string directory) { IOStats stats = new IOStats(); IOStats subStats = null; string[] files = Directory.GetFiles(directory); string[] directories = Directory.GetDirectories(directory); stats.FileCounts = files.Length; stats.DirectoryCounts = directories.Length; foreach (string dir in directories) { subStats = GetDirectoryCounts(dir); stats.FileCounts += subStats.FileCounts; stats.DirectoryCounts += subStats.DirectoryCounts; } return(stats); }