2012-12-31 64 views
0

需要幫助這裏,過這種錯誤,即使我搜索的解決方案仍然不可能幫助我..C#downloadFile但不同的端口

我想downloadFile與HTTP協議的文件,但不同的端口,這意味着不使用端口80,但其他端口如5151.該代碼在C#中正常工作,編譯時沒有任何錯誤。在調試過程中,它表示無法找到路徑/ URL,但路徑/ URL在我的瀏覽器中正常工作,端口爲5151(http://localhost:5151,效果很好)..

任何想法如何?

下面是代碼,是否有任何應該補充的缺失?

client = new WebClient(); 
      try 
      { 
       client.DownloadFile(@""+httpAddr + ":5151/factionusers.log", "factionusers.log"); 
      } 
      catch 
      { 
       client.DownloadFile(@""+httpAddr2 + ":5151/factionusers.log", "factionusers.log"); 
      } 
+0

「@」「+」部分有什麼意義? –

+0

http://stackoverflow.com/questions/995495/how-to-set-port-for-webclient-in-c ..看看這個。 – Mullaly

+0

請將您的示例更改爲使用硬編碼字符串 - 通過查看'httpAddr'變量來判斷可能會出錯是非常困難的。 –

回答

2

也許你在你的httpAddr變量中加了一個「/」。

static void Main() 
    { 
     string httpAddr = "http://192.168.56.101"; 
     var client = new WebClient(); 
     try 
     { 
      client.DownloadFile(@"" + httpAddr + ":5151/readme.txt", "readme.txt"); 
     } 
     catch 
     { 
      client.DownloadFile(@"" + httpAddr + ":5151/readme.txt", "readme.txt"); 
     } 
    } 

在我的電腦中。它進展順利。

+0

+1 ...這是最有可能的原因。但是如果OP使用的構造函數使用'Uri' :) –

+0

問題解決了,httpAddr被錯誤地初始化爲錯誤的地址(這不存在,拼錯地址,lol),那麼它會容易多了。謝謝:) – Marhazk

+0

OK。 ..Congratulations.aha。 – bystander

相關問題