System.Net.WebClient w = new System.Net.WebClient();
w.DownloadFile("http://www.sina.com.cn/test.zip","C:\\test.zip");两个参数,前一个是Url,后一个是下载后的文件名

解决方案 »

  1.   

    //use sock connect to the host:80 //如 http://www.csdn.com/1.htm//send thisstring GetOf = "/1.htm";
    string HostOf = "www.csdn.com";string sendStr = "" +
    "GET " + GetOf + " HTTP/1.1" + "\r\n" +
    "Host: " + HostOf + "\r\n" +
    "Accept: */*" + "\r\n" +
    "Referer: " + HostOf + "\r\n" +
    "User-Agent: Mozilla/4.0 (compatible; MSIE 5.00; Windows 98)" + "\r\n" +
             "Connection: Close\r\n\r\n";//use sock send sendStr to host:80 
    //然后就可以 Receive the file body
      

  2.   

    add command on my exampleRange: bytes=xxx //use this u can 断点续传
      

  3.   

    timmy3310(Tim) 的方法不错,多学了一招哩
      

  4.   

    还有问题:怎么得到url包含文件的原文件名称?
    我下到本地,只改变路径,不能改变原来的文件名称,怎么办?着急!!!!!!
      

  5.   

    fileStream = new FileStream(filePath + fileName, FileMode.Create, FileAccess.Write);
    HttpWebRequest req = (HttpWebRequest)WebRequest.Create(downLoadURL); 
    resp = (HttpWebResponse)req.GetResponse();  
    respStream = resp.GetResponseStream();
    int len = 8192;
    byte[] buf = new byte[len];
    int n;
    while((n = respStream.Read(buf, 0, len)) > 0)
    {
    fileStream.Write(buf, 0, n);
    }
    fileStream.Flush();
    fileStream.Close();
      

  6.   

    还有问题:怎么得到url包含文件的原文件名称?
    我下到本地,只改变路径,不能改变原来的文件名称,怎么办?着急!!!!!!
      

  7.   

    谢谢大家。问题已经解决。我经理解决的。  
    方案是:  
    //要将url里的单个文件下到本地,编程得到url所包含的单个文件的文件名称  
    HttpWebRequest  req  =  (HttpWebRequest)WebRequest.Create(URL_Str);  
    req.AllowAutoRedirect=true;  
    HttpWebResponse  resp  =  (HttpWebResponse)req.GetResponse();      
    FileName=  
         GetFileNameFromHeadStr(  resp.Headers.GetValues(    "Content-Disposition  "  )[0])  ;  
    //  
    private    string  GetFileNameFromHeadStr(string  HeadStr  )  
                           {  
     
                                       HeadStr=HeadStr.ToLower();  
                                       int  theIndex=HeadStr.IndexOf(  "filename=  ");  
                                       if(theIndex  <1)  
                                       {  
                                                   return    "  ";    
                                       }  
                           theIndex+=9;  
                           return  HeadStr.Substring(theIndex,HeadStr.Length-theIndex);  
                                         
                           }