我正在开发一个处理大量文件(超过 50 000 个文件)的批处理程序,并且我在使用该Directory.GetFiles
方法时遇到了奇怪的行为。
在此过程中,我移动了与以下搜索模式“*.pdf”匹配的文件,并通过该Directory.GetFiles
方法获取了文件:我很惊讶地看到有时我移动了 .pdfa 文件。
所以我检查了文档,它清楚地指出,如果搜索模式包含一个带有 3 个字母的扩展名,那么每个扩展名以该扩展名开头的文件都将被返回。
我用一个简单的程序进行了测试,它的行为不像文档中所说的那样,它只在非常罕见的情况下表现得像这样。
使用此代码:
static void Main(string[] args) {
var directory = @"E:\Test\";
var files = Directory.GetFiles(directory, "*.pdf");
foreach(var file in files)
Console.WriteLine(file);
}
我有这个结果:
你对这种行为有什么解释吗?