2012-07-19 78 views
1

文件對於FTP路徑說ftp://ftp.something.com/我能列出與此代碼的所有目錄:確定FTP URL是否是目錄名或使用C#

WebRequest req = WebRequest.Create(url) as WebRequest; 
     req.Method = WebRequestMethods.Ftp.ListDirectory; 

//code to get response from ftp site and list all files and directories path in a list name name_list. 

現在的foreach路徑從列表name_list中,如果路徑是然後我在列表名稱sub_list中添加該路徑,否則,如果它是某個文件的路徑(.txt,.pdf,.rar,.html,.tw和更多擴展名),則將該路徑添加到另一個列表名稱final_list中。 到目前爲止,我所能夠做的就是:

foreach(string url in name_list) 
{ 
if (Regex.IsMatch(url, ".*?" + @"(\.[A-Za-z]{2,4}$)")) 
     //add to sub_list 
else 
     //add to final_list 
} 

但這不是達到我的目的一個可靠和穩定的方式。 有沒有其他最好的辦法呢。

+0

Sicne了'ListDirectory'實際上是一個「FTP NLIST」命令,你可以看看[此相似的,所以問題(http://stackoverflow.com/questions/584865 /確定-IF-A-掛牌是-A-目錄或文件 - 在 - python的環比FTP)。 – 2012-07-19 11:11:42

回答

0

我會使用System.IO.Path類來確定它是否是路徑或文件。具體來說: http://msdn.microsoft.com/en-us/library/system.io.path.getfilename.aspx

+2

這是FTP相關的,我懷疑你可以使用_local_文件系統功能。 – 2012-07-19 11:08:00

+0

提問者正在尋找一種方法來確定字符串url是否匹配目錄或文件模式。爲此,無論URL如何,Path類都可以工作。 – 2012-07-19 18:33:07

相關問題