激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

香港云服务器
服務器之家 - 編程語言 - C# - HttpWebRequest實現(xiàn)下載圖片至本地

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

2022-02-27 15:36C#教程網(wǎng) C#

這篇文章主要為大家詳細介紹了HttpWebRequest實現(xiàn)下載圖片至本地,具有一定的參考價值,感興趣的小伙伴們可以參考一下

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

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
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響應
        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
      }
      //異常請求
      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();
      }
      //異常請求
      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();
    }
  }
}

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

延伸 · 閱讀

精彩推薦
1097
主站蜘蛛池模板: 高清国产免费 | 99久久久免费视频 | 男女污视频在线观看 | 中文字幕免费在线看 | 一边吃奶一边摸下娇喘 | 欧美顶级毛片在线播放小说 | 久久久久91视频 | 欧美一级三级在线观看 | 九艹在线 | 精品一区二区三区网站 | 99热高清 | 久久欧美亚洲另类专区91大神 | 日韩视频观看 | 精品中文字幕久久久久四十五十骆 | 九九热在线精品视频 | 毛片在线免费视频 | 中文字幕亚洲一区二区三区 | 中文字幕综合在线观看 | 欧美第1页| 国产黄色毛片 | 毛片免费看的 | 欧美乱码精品一区 | 做爰xxxⅹ性护士hd在线 | 伦一区二区三区中文字幕v亚洲 | 久草久视频 | 羞羞电影在线观看 | 精品国产91一区二区三区 | 欧美综合在线观看视频 | 深夜影院一级毛片 | 一级做a在线观看 | 97中文| 玩偶姐姐 在线观看 | 性插视频 | 日本a大片 | 欧美aⅴ在线观看 | 国产色视频免费 | 国产精品一区网站 | fc2国产成人免费视频 | 成人短视频在线观看免费 | 久久免费视频精品 | 成人做爰高潮片免费视频美国 |