在WinForm程序中有时会直接从网站上下载文件,这里的文件为rar文件或是exe文件或是文本文件等等。。
编程的时候不要忘记添加using System.Net;的引用(在其中要用到HttpWebResponse,httpWebRequest).
下面是一简单的应用例子:
#region download files from server
/// <summary>
///
/// </summary>
/// <param name="downPath"></param>
/// <param name="tabName"></param>
private void LoadFiles()
{
string fromPath = "http://127.0.0.1//test.rar"; //源文件路径
string downPath = "c://test.rar"; //目标路径
try
{
//create web request/response
HttpWebResponse Response;
HttpWebRequest Request;
Request = (HttpWebRequest)HttpWebRequest.Create(fromPath);
Request.Headers.Add("Translate: f");
Request.Credentials = CredentialCache.DefaultCredentials;
Response = (HttpWebResponse)Request.GetResponse();
Stream respStream = null;
respStream = Response.GetResponseStream();
int FileSize=int.Parse(Response.ContentLength.ToString());
//Do the Download
byte[] buffer = new byte[FileSize];
FileStream fs = File.Open(downPath,FileMode.Create, FileAccess.Write);
int length;
length=respStream.Read(buffer, 0, FileSize);
long writeLength=length;
while(length!=0)
{
fs.Write(buffer, 0, length);
length=respStream.Read(buffer, 0, FileSize);
writeLength+=(long)length;
}
fs.Close();
}
catch
{
throw;
}
}
#endregion