2012-08-09 142 views
2

假設網站已經爲其文件夾中的某個文件夾設置了打開的目錄列表權限,並且我可以在Web瀏覽器上看到文件[如圖像上]。有沒有辦法將文件夾中的文件轉換爲數組?如何從打開目錄列表的目錄中獲取文件?

enter image description here

總之,我需要使用在幹什麼DirectoryInfo.GetFiles("C:/");一個URL的方法。

編輯:我寧願要使用一種方法,而不是獲取Web響應並解析結果。這就像後門,以防沒有其他方法。

+0

只有一個或者是你希望得到的子目錄中的所有文件夾以及?您可以使用webclient加載html並使用正則表達式來獲取該信息 – Esen 2012-08-09 19:54:29

+0

@Esen,我可以再次爲子目錄做,這是正確的。但我會很高興,如果你可以解釋你的解決方案或點樣本等 – kubilay 2012-08-09 19:58:27

回答

4

這個代碼將有助於你得到的HTML

   WebRequest request = WebRequest.Create("http://yourwebsite/yourwebdirectory/"); 
      var webResponse=request.GetResponse(); 
      Stream dataStream = webResponse.GetResponseStream(); 
      StreamReader reader = new StreamReader(dataStream); 
      string responseFromServer = reader.ReadToEnd(); 
      Console.WriteLine(responseFromServer); 
      reader.Close(); 
      webResponse.Close(); 

一旦你,你可以分析它的HTML來獲取文件名

+0

順便說一句,你需要添加「使用system.net;」 – Esen 2012-08-09 20:08:48

+0

謝謝你的想法。我實際上考慮過這個問題,我不想在這個問題上聲稱。我們希望等同於DirectoryInfo.GetFiles()方法。如果沒有,那麼你的是唯一的解決方案。 – kubilay 2012-08-09 20:10:46

+2

順便說一句,我只是碰到並發現http://stackoverflow.com/a/124522/1221319討論相同。 – Esen 2012-08-09 20:14:44