get all folders in a directory c# code example
Example 1: c# list all files in a directory and subdirectory
string[] allfiles = Directory.GetFiles("path/to/dir", "*.*", SearchOption.AllDirectories);
Example 2: C# get all files in directory
//path is the path of the directory to get files from
//searchPattern is to get specific files. If you want only exe files you enter *.exe
private static IEnumerable<string> GetAllFiles(string path, string searchPattern)
{
return Directory.EnumerateFiles(path, searchPattern).Union(
Directory.EnumerateDirectories(path).SelectMany(d =>
{
try
{
return GetAllFiles(d, searchPattern);
} catch(Exception e)
{
return Enumerable.Empty<string>();
}
}));
}
Example 3: get folders in directory c#
string[] folders = System.IO.Directory.GetDirectories(@"C:\My Sample Path\","*", System.IO.SearchOption.AllDirectories);
Example 4: how to get all files from folder and subfolders in c#
private IEnumerable<string> GetAllFiles(string path, string searchPattern)
{
return Directory.EnumerateFiles(path, searchPattern).Union(
Directory.EnumerateDirectories(path).SelectMany(d =>
{
try
{
return GetAllFiles(d, searchPattern);
}
catch (Exception)
{
return Enumerable.Empty<string>();
}
}));
}
//or special for c# and .cs files
/*private List<string> GetAllCsFilesFromDirectory(string directory, string searchPattern)
{
List<string> lstFilesFound = new List<string>();
try
{
foreach (string path in Directory.GetDirectories(directory))
{
foreach (string item in Directory.GetFiles(path, CsharpFileExtension, SearchOption.AllDirectories))
{
lstFilesFound.Add(item);
}
GetAllCsFilesFromDirectory(path, searchPattern);
}
}
catch (Exception e)
{
Console.WriteLine(e);
}
return lstFilesFound;
}*/