2010-10-18 179 views
0

我在遠程服務器上有很多圖像,比如說images.foo.com/222 &我想訪問駐留在images.foo.com/上的文件夾222中的所有文件的文件名。 我曾嘗試下面的代碼,但得到錯誤「虛擬路徑是無效」:如何從遠程服務器文件夾訪問所有文件名 - c#?

imageserver = http://images.foo.com/222; 
DirectoryInfo di = new DirectoryInfo(imageserver); // line giving exception 
FileInfo[] rgFiles = di.GetFiles(); 
string simagename = ""; 
if (rgFiles.Count() > 0) 
{ 
foreach (FileInfo fi in rgFiles) 
{ 
//collect each filename from here 
} 
} 

請幫忙提前 gbaxi

+1

使用Direction.GetFiles()或新的DirectoryInfo類僅對本地或網絡文件系統有用。 Http是一個基於Web的協議,因此無法瀏覽。你可以看看使用WebDev? – Kane 2010-10-18 10:57:38

+0

也許這篇文章會有幫助http://www.codeproject.com/KB/IP/Spideroo.aspx或http://www.devsource.com/c/a/Languages/Pulling-Data-From-Internet-URLs -in-C/ – 2010-10-18 11:01:16

回答

0

感謝您無法訪問駐留與DirectoryInfo的在網絡上的目錄類。相反,使用WebRequest類從URL獲取列表並從該列表中獲取文件。

+0

你好,請你告訴我如何使用webrequest類 – user255818 2010-10-18 11:24:58

+0

@ user255818做到這一點:你將不得不使用[GetResponse](http://msdn.microsoft.com/)手動解析響應數據。 COM/EN-US /庫/ system.net.httpwebrequest.getresponse.aspx)。使用HttpWebRequest時,鏈接中有一個示例。從圖像站點獲取響應,然後將各個響應(不要忘記處理它們)到每個文件。 – Patrick 2010-10-18 14:16:03

2

DirectoryInfo的需要類型的UNC路徑「文件服務器\\。\圖像」

一個http地址不起作用

0

的問題是,HTTP不會對目錄列表是如何成爲一個清晰的界面顯示。大致有兩種選擇:

  1. 解析通過的WebRequest檢索到的HTML,但你不會得到像創建/修改時間和用戶;

  2. 用不同的機制來檢索像FTP或文件共享這樣的文件細節。

相關問題