国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > C# > 正文

HttpWebRequest實(shí)現(xiàn)下載圖片至本地

2019-10-29 21:01:13
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

本文為大家分享了HttpWebRequest實(shí)現(xiàn)下載圖片至本地的具體代碼,供大家參考,具體內(nèi)容如下

HttpWebRequest發(fā)送web請(qǐng)求,獲取流文件,保存至本地

using System;using System.IO;using System.Net;using System.Text;using System.Web.Mvc; namespace Web.Controllers{  public class HomeController : Controller  {    string url = "http://www.***.com/Image.aspx?ucode=ucode";     public Stream GetFileToStream(string filePath)    {      FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read);      byte[] bytes = new byte[fileStream.Length];      fileStream.Read(bytes, 0, bytes.Length);      fileStream.Close();      Stream streamFile = new MemoryStream(bytes);      return streamFile;    }     public void Method1()    {      string fileName = @"/upload/" + GenerateTimeStamp() + ".jpg";       string webPath = Server.MapPath(fileName);      string pathName = @"d:/" + GenerateTimeStamp() + ".jpg";      HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);       req.ServicePoint.Expect100Continue = false;      req.Method = "GET";      req.KeepAlive = true;       req.ContentType = "image/png";      HttpWebResponse rsp = (HttpWebResponse)req.GetResponse();       System.IO.Stream stream = null;       try      {        //以字符流的方式讀取HTTP響應(yīng)        stream = rsp.GetResponseStream();        System.Drawing.Image.FromStream(stream).Save(pathName);      }      finally      {        // 釋放資源        if (stream != null) stream.Close();        if (rsp != null) rsp.Close();      }    }     protected void Method2()    {      string fileName = @"/upload/" + GenerateTimeStamp() + ".jpg";       string webPath = Server.MapPath(fileName);      string pathName = @"d:/" + GenerateTimeStamp() + ".jpg";      HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(url);      myRequest.Method = "GET";       HttpWebResponse myResponse = null;      try      {        myResponse = (HttpWebResponse)myRequest.GetResponse();        StreamReader reader = new StreamReader(myResponse.GetResponseStream(), Encoding.UTF8);        Stream stream = myResponse.GetResponseStream();         #region 保存下載圖片         MemoryStream ms = null;        Byte[] buffer = new Byte[myResponse.ContentLength];        int offset = 0, actuallyRead = 0;        do        {          actuallyRead = stream.Read(buffer, offset, buffer.Length - offset);          offset += actuallyRead;        }        while (actuallyRead > 0);        ms = new MemoryStream(buffer);         byte[] buffurPic = ms.ToArray();        System.IO.File.WriteAllBytes(pathName, buffurPic);         #endregion      }      //異常請(qǐng)求      catch (WebException ex)      {       }    }     protected void Method3()    {      string fileName = @"/upload/" + GenerateTimeStamp() + ".jpg";       string webPath = Server.MapPath(fileName);      string pathName = @"d:/" + GenerateTimeStamp() + ".jpg";      HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(url);      myRequest.Method = "GET";       HttpWebResponse myResponse = null;      try      {        myResponse = (HttpWebResponse)myRequest.GetResponse();        StreamReader reader = new StreamReader(myResponse.GetResponseStream(), Encoding.UTF8);        Stream stream = myResponse.GetResponseStream();         #region 保存下載圖片         FileStream fileStream = new FileStream(pathName, FileMode.Create, FileAccess.Write);        byte[] bytes = new byte[1024];        int readSize = 0;        while ((readSize = stream.Read(bytes, 0, 1024)) > 0)        {          fileStream.Write(bytes, 0, readSize);          fileStream.Flush();        }        #endregion         myResponse.Close();        stream.Close();        fileStream.Close();      }      //異常請(qǐng)求      catch (WebException ex)      {       }      finally      {       }    }     public string GenerateTimeStamp()    {      TimeSpan ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);      return Convert.ToInt64(ts.TotalMilliseconds).ToString();    }  }}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到c#教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 江山市| 江城| 彝良县| 永德县| 孝昌县| 铜山县| 日照市| 育儿| 喀喇沁旗| 安陆市| 临沭县| 工布江达县| 红安县| 中宁县| 长治县| 吉木萨尔县| 宁南县| 承德市| 神农架林区| 霍邱县| 白朗县| 和田县| 镇康县| 闽清县| 新乡县| 临海市| 清水河县| 屯门区| 新郑市| 敖汉旗| 黔西县| 开封县| 灵丘县| 越西县| 平利县| 敦化市| 石家庄市| 金山区| 文安县| 甘肃省| 阆中市|