不支持的URI格式:在c#中从Web客户端下载远程文件时

时间:2012-09-07 18:09:32

标签: c# winforms uri webclient

我正在尝试从服务器下载文件。在传递下载文件的链接时,它会抛出错误

**不支持URI格式**并指向“link” - 字符串包含服务器文件地址

string link =
    http:\\www.nse-india.com\DERIVATIVES\2012\AUG\fo22AUG2012bhav.csv.zip

          WebClient wc = new WebClient();

        var ua = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)";
        wc.Headers.Add(HttpRequestHeader.UserAgent, ua);
        wc.Headers["Accept"] = "/";

下载代码就像这样

    try
  {
   wc.DownloadFile(@link, "H:\\ZipTest\\ZipText\\nt.zip"); // Here Showing error
  _status = true;
   fileCount++;

  } catch (Exception ex)

  {
    MessageBox.Show(ex.Message);
    _status = false;
    }

如果我在网络浏览器中使用相同的地址,它正确下载或如果替换其他一些文件,那么我也可以从相同的代码下载只针对这个特定的文件我面临问题,任何想法?

2 个答案:

答案 0 :(得分:1)

您的网址已损坏:http:\www.nse-indi.......。它应该类似于http://www.nse-india.com/DERIVATIVES/2012/AUG/fo22AUG2012bhav.csv.zip

答案 1 :(得分:1)

网址需要稍加修改

更改

string link =
    "http:\www.nse-india.com\DERIVATIVES\2012\AUG\fo22AUG2012bhav.csv.zip"

string link =
    "http://www.nse-india.com/DERIVATIVES/2012/AUG/fo22AUG2012bhav.csv.zip"