可以用通配符指定目录路径吗?

Abe*_*ler 9 .net c# path

我有以下代码:

foreach (string file in Directory.GetFiles(sourcePath))
{
    // whatever
}
Run Code Online (Sandbox Code Playgroud)

从特定目录获取文件.是否可以使用通配符匹配目录?例如:

c:\test\di*
Run Code Online (Sandbox Code Playgroud)

将匹配目录中的所有文件:

c:\test\dictionary\
c:\test\directory\
c:\test\dig\
Run Code Online (Sandbox Code Playgroud)

我看到你可以将文件过滤器传递给GetFiles方法,但这仅适用于文件,而不适用于目录名称.

Dar*_*rov 11

你有一个重载,它允许你指定一个搜索模式,或者如果你需要指定搜索选项,还有另一个重载:

foreach (string directory in Directory.GetDirectories(sourcePath, "di*"))
{
    // whatever
}
Run Code Online (Sandbox Code Playgroud)

  • @Abe Miessler,不,它可以很好地处理目录名称.试试我发布的例子:`Directory.GetDirectories(@"c:\ test","di*"))`将匹配你在问题中显示的所有目录. (2认同)