2010-08-02 49 views
0

我有一個路徑爲「C:\用戶\ Web引用」得到完整的文件名

在「Web引用」文件夾中,我有* .wsdl文件

我想要得到的完整文件名* .wsdl文件

謝謝!

+0

從IDE,資源管理器?什麼版本? – leppie 2010-08-02 08:17:06

回答

2

事情是這樣的:

var files = Directory.GetFiles("C:\\Users\\Web References", "*.wsdl", SearchOption.AllDirectories); 

這將返回文件的集合 - 有可能是在目錄中有多個WSDL文件。就拿第一:

var wsdlFile = files.FirstOrDefault(); 
0

首先,你必須要找到它:

var files = Directory.GetFiles(path, "*.wsdl"); 

現在files將包含在path完整路徑的所有WSDL文件(如果有的話)。

+0

然後他可以使用'Path.GetFileName(string)'來獲取文件名(沒有任何substring-indexOf magic * shudders *(不是你說的,只是說))。 – Bobby 2010-08-02 08:20:28

0
// find files by filter 
var result = Directory.GetFiles("C:\\Users\\Web References\\", "*.wsdl"); 
//if you have only one file 
return System.IO.Path.GetFileName(result[0]); // "my.wsdl" 
0

Path類會幫助您提取只是從文件路徑文件名:

string path = @"C:\Users\Web References"; 
string[] files = Directory.GetFiles(path, "*.wsdl"); 

foreach (string filePath in files) { 
    string filename = Path.GetFileName(filePath); // e.g. myFile.wsdl 
} 
0

或使用linq

var files = from f in Directory.GetFiles((@"C:\Users\Web References") 
    where f.EndsWith(".wsdl") 
    select f; 

foreach (var file in files) 
    ...