国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 石楼县| 嘉祥县| 邢台市| 昭平县| 厦门市| 徐闻县| 凤山县| 郧西县| 太仓市| 合阳县| 敦化市| 太康县| 鲁甸县| 南漳县| 咸阳市| 洪雅县| 绵竹市| 丰县| 大同县| 大兴区| 华容县| 内黄县| 鹤庆县| 尚义县| 慈利县| 晋宁县| 两当县| 锡林浩特市| 沙湾县| 宜春市| 商丘市| 衡东县| 泸西县| 会泽县| 沁阳市| 平安县| 漳州市| 石阡县| 宝丰县| 莱州市| 永康市|