为什么 Directory.GetFiles 在 SearchPattern 中使用星号时只返回 1 个匹配项?
Why Directory.GetFiles only returning 1 match when using asterisk in SearchPattern?
正如主题所说 - 我试图理解,为什么在 SearchPattern 中使用星号时 Directory.GetFiles
只有 returns 1 个结果。
例如,我试图在我的目录中查找所有 .nfo 文件,所以我这样搜索:
Directory.GetFiles(directory, "*.nfo");
但它始终只有 returns 1 次命中,尽管该目录中有 2 个 nfo 文件 - 为什么???
如果我这样搜索:
Directory.GetFiles(directory, "*.*");
然后我得到所有文件,包括我的 2x .nfo 文件。
这是 Directory.GetFiles
中的已知错误吗?或者谁能解释一下???
提前致谢。
PS:我也尝试使用 Directory.EnumerateFiles
进行搜索,但结果相同......:(
我已经使用下面的替代代码找到了可行的解决方案。
感谢所有想法和建议:-)
Directory.GetFiles(directory, "*.*").Where(file => file.EndsWith(".nfo", StringComparison.OrdinalIgnoreCase));
正如主题所说 - 我试图理解,为什么在 SearchPattern 中使用星号时 Directory.GetFiles
只有 returns 1 个结果。
例如,我试图在我的目录中查找所有 .nfo 文件,所以我这样搜索:
Directory.GetFiles(directory, "*.nfo");
但它始终只有 returns 1 次命中,尽管该目录中有 2 个 nfo 文件 - 为什么???
如果我这样搜索:
Directory.GetFiles(directory, "*.*");
然后我得到所有文件,包括我的 2x .nfo 文件。
这是 Directory.GetFiles
中的已知错误吗?或者谁能解释一下???
提前致谢。
PS:我也尝试使用 Directory.EnumerateFiles
进行搜索,但结果相同......:(
我已经使用下面的替代代码找到了可行的解决方案。
感谢所有想法和建议:-)
Directory.GetFiles(directory, "*.*").Where(file => file.EndsWith(".nfo", StringComparison.OrdinalIgnoreCase));