Winform中下載文件

////// 下載文件//////下載文件地址

///下載后的存放地址

///用于顯示的進度條

public void ?DownloadFile(string URL,string filename,System.Windows.Forms.ProgressBar prog)

{

? try

? ? {?

? ? ? System.Net.HttpWebRequestMyrq=(System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(URL);

? ? ? System.Net.HttpWebResponsemyrp=(System.Net.HttpWebResponse)Myrq.GetResponse();

? ? ? longtotalBytes=myrp.ContentLength;

? ? ? if(prog!=null)

? ? ? ? {

? ? ? ? ? prog.Maximum=(int)totalBytes;

? ? ? ? }

? ? ? System.IO.Stream st=myrp.GetResponseStream();

? ? ? System.IO.Stream so=new System.IO.FileStream(filename,System.IO.FileMode.Create);

? ? ? long totalDownloadedByte=0;

? ? ? byte[] by=new byte[1024];

int osize=st.Read(by,0, (int)by.Length);

while(osize>0)

{

totalDownloadedByte=osize+totalDownloadedByte;

System.Windows.Forms.Application.DoEvents();

so.Write(by,0,osize);

if(prog!=null)

{

prog.Value=(int)totalDownloadedByte;

}

osize=st.Read(by,0, (int)by.Length);

}

so.Close();

st.Close();

}

catch(System.Exception)

{

throw;

}

}

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,837評論 18 139
  • 說明本次redis集群安裝在rhel6.8 64位機器上,redis版本為3.2.8,redis的gem文件版本為...
    讀或寫閱讀 15,009評論 3 9
  • 1. Java基礎部分 基礎部分的順序:基本語法,類相關的語法,內部類的語法,繼承相關的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,739評論 18 399
  • ¥開啟¥ 【iAPP實現(xiàn)進入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程,因...
    小菜c閱讀 6,497評論 0 17
  • 你可記得 曾經(jīng)的我們 談天...
    madt閱讀 83評論 0 0