如何使用 C# 获取路径内的所有目录和子目录?
为了获取目录,C# 提供了一个名为 Directory.GetDirectories 的方法。Directory.GetDirectories 方法返回匹配指定目录中指定搜索模式的子目录名称(包括它们的路径),并且可根据需要搜索子目录。
在下面的示例中,* 匹配该位置中的零个或更多个字符。SearchOption TopDirectoryOnly .仅获取顶级目录,而 SearchOption AllDirectories .获取所有顶级目录和子目录。
注意:rootPath 将成为你系统中的 rootPath,所以创建一个测试文件夹并根据 rootPath 使用文件路径。
示例 1
static void Main (string[] args) { string rootPath = @"C:\Users\Koushik\Desktop\TestFolder"; string[] dirs = Directory.GetDirectories(rootPath, "*", SearchOption.TopDirectoryOnly); foreach (string dir in dirs) { Console.WriteLine (dir); } Console.ReadLine (); }
输出
C:\Users\Koushik\Desktop\TestFolder\TestFolderMain C:\Users\Koushik\Desktop\TestFolder\TestFolderMain 1 C:\Users\Koushik\Desktop\TestFolder\TestFolderMain 2
示例 2
static void Main (string[] args) { string rootPath = @"C:\Users\Koushik\Desktop\TestFolder"; string[] dirs = Directory.GetDirectories(rootPath, "*", SearchOption.AllDirectories); foreach (string dir in dirs) { Console.WriteLine (dir); } Console.ReadLine (); }
输出
C:\Users\Koushik\Desktop\TestFolder\TestFolderMain C:\Users\Koushik\Desktop\TestFolder\TestFolderMain 1 C:\Users\Koushik\Desktop\TestFolder\TestFolderMain 2 C:\Users\Koushik\Desktop\TestFolder\TestFolderMain 2\TestFolderMainSubDirectory
广告