检查目录是否没有文件,但它可能包含子文件夹

时间:2012-06-17 13:23:34

标签: c#

我需要检查目录是否为空。问题是,我想将目录视为空,如果它包含子文件夹,无论子文件夹是否包含文件。我只关心我正在看的路径中的文件。这个目录将通过网络访问,这种情况有点复杂。最好的方法是什么?

2 个答案:

答案 0 :(得分:28)

Directory.EnumerateFiles(string)方法重载仅返回指定目录中直接的文件。它不会返回其中包含的任何子目录或文件。

bool isEmpty = !Directory.EnumerateFiles(path).Any();

EnumerateFiles优于GetFiles的优点是文件集合是按需枚举的,这意味着一旦返回第一个文件,查询就会成功(从而避免阅读剩下的目录中的文件。)

答案 1 :(得分:8)

也许这就是:

if (Directory.GetFiles(path).Length == 0)...... ;