【发布时间】:2016-08-21 07:57:29
【问题描述】:
我想知道 Directory.GetFiles 方法的搜索模式逻辑是什么。我在搜索模式中使用星号通配符。如果我把“*”放在字符前面,我不明白搜索时应用什么样的逻辑。
如果我把“*”放在 char 前面,我得到了意想不到的结果,但如果我放在 char 后面,它是正确的。
这是文件夹中的文件列表、示例代码和结果。
字符前面的星号
string _strSearchPattern = "*1";
foreach (string _strFolder in Directory.GetFiles(@"C:\Temp\FileList", _strSearchPattern))
Console.WriteLine("{0}", _strFolder);
意外的结果。应该是1。为什么“b_Request”出来了,为什么没有“b”被包含?
字符后面的星号
string _strSearchPattern = "1*";
foreach (string _strFolder in Directory.GetFiles(@"C:\Temp\FileList", _strSearchPattern))
Console.WriteLine("{0}", _strFolder);
这是预期的结果
是bug还是我想太多了?
【问题讨论】: