How to list sub directories in C#?

The Directory.EnumerateDirectories method returns an enumerable collection of directory names in the specified directory. This method gives all sub directories in a directory in C#.

string root = @"C:\Temp";

// Get a list of all subdirectories
var dirs = from dir in Directory.EnumerateDirectories(root) select dir;
Console.WriteLine("Subdirectories: {0}", dirs.Count<string>().ToString());
Console.WriteLine("List of Subdirectories");
foreach (var dir in dirs)
{
    Console.WriteLine("{0}",dir.Substring(dir.LastIndexOf("\\") + 1));
}

// Get a list of all subdirectories starting with 'Ma'
var MaDirs = from dir in Directory.EnumerateDirectories(root, "Ma*") select dir;
Console.WriteLine("Subdirectories: {0}", MaDirs.Count<string>().ToString());
Console.WriteLine("List of Subdirectories");
foreach (var dir in MaDirs)
{
    Console.WriteLine("{0}",dir.Substring(dir.LastIndexOf("\\") + 1));
}

Download free book: Working with Directories in C#


Similar Articles