介绍使用C#发送HTTP请求,获取图片的两种方法。一种是从响应流直接创建Image,另一种是将流保存到图片文件。
工具/原料
Visual Studio 2015(C#)
从响应流创建Image对象
1、进入正题。我们按步骤编写烂瘀佐栾这个获取图片的函数GetPic,对其中的代码予以说明,并给一些注意事项。首先,定义返回类型Image,参数为url链接string的函数:GetPic。
2、然后,创建HTTP请求如图。注意类型是HttpWebRequest,否则无法设醅呓择锗置其Http参数。如图只是简单设置了Method为GET,更多参数的设置详见开篇处经验引用。接着使用GetResponse()方法获取响应,注意as HttpWebResponse不能省。
3、接下来,使用响应的GetResponseStream获取响应流。接着使用Image.FromStream从响应流创建Image对象。然后关闭响应流,返回图片。
4、我们使用如图代码,获取一张来自网络的图片,返回Image对象设置到pictureBox1,效果如图。
5、接着,我们可以使用这个Image对象的Save(文件名)成员函数保存到文件。
下载图片文件
1、使用如图代码,编写了一个DownloadFile函数,输入参数为一个url链接和一个文件名。
2、调用该函数,直接将响应流的内容下载到了本地文件。具体使用该方法时,文件后缀需要自己根据响应的信息来判断。