2015-09-25 27 views
0

我有一個包含超過150個文件的文件夾,我想收集一個包含所有包含某個關鍵字的列表。關鍵字可以在開頭或中間的某處。 "*.xml"捕獲所有的xml文件。在searchpatterns中的*通配符的確切功能

這是我的問題當我這樣做"*partkey*.xml"這是否捕獲所有包含子字符串的文件?
例如: string[] files = Directory.GetFiles("thepathtothefolder", "*key*.xml");
我會得到預期的輸出嗎?

+3

好了文件,只是試試呢? – Gene

+0

Path.GetExtension(...)+ string.Contains(...)的組合將完成作業 – MajkeloDev

+3

閱讀[「備註」 - Directory.GetFiles'部分](https://msdn.microsoft.com /en-us/library/wz42302f(v=vs.110).aspx),然後返回一個特定的問題/問題。 –

回答

2

您可能想查看它here。在那裏您會找到通配符*?的含義的「確切」描述。它與自MS DOS時代以來的字符相同,代表'零或多個'字符。

string[] files = Directory.GetFiles("thepathtothefolder", "*key*.xml"); 

會給你所有包含THRE字符「關鍵」文件名的數組。

+0

是的,最後一個具體的價值*:P 感謝這一點,我試着用google搜索這個問題,但我真的不能真正形成這個問題適當的.. –

+0

@HeadhunterXamd谷歌是相當不錯,在給予好的比賽,但我發現閱讀方法或類的MSDN文檔通常是獲取事實的最快方法。 :-) – Mithrandir

0

是的。隨着搜索模式"*partkey*.xml"你將得到所有以「.XML」結尾,幷包含字符串‘partkey’

Output example: 
123partkey123.xml 
456partkey456.xml