检查给定目录中是否存在任何目录

时间:2012-02-29 17:47:51

标签: c# .net find subdirectory

我的应用程序是Windows,C#3.0。我想确保给定的目录不包含子目录。像

这样的朴素代码
if (Directory.GetDirectories(path).Length != 0)

对包含例如的目录的工作速度非常慢10000个子目录,因为它将构建一个子目录列表,而即使是1个目录已经足够我了。

.NET中有没有办法快速确定1个子目录?

2 个答案:

答案 0 :(得分:3)

if (Directory.EnumerateDirectories().Any())
只有在枚举返回的序列(延迟执行)时,

EnumerateDirectories才会返回目录。

答案 1 :(得分:1)

使用函数重载只会查找当前目录中的目录,而不是整个树:

if (Directory.GetDirectories(path, "*.*", SearchOption.TopDirectoryOnly).Length != 0)
相关问题