将响应内容保存到MemoryStream或Jpeg文件 [英] Save response content to MemoryStream or Jpeg file

查看:120
本文介绍了将响应内容保存到MemoryStream或Jpeg文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我获取请求服务器响应我的jpeg文件。



 HttpWebRequest picrequest =(HttpWebRequest)HttpWebRequest.Create(captchaUrl) ; 
HttpWebResponse picResponse =(HttpWebResponse)picrequest.GetResponse();
StreamReader srr = new StreamReader(picResponse.GetResponseStream(),Encoding.UTF8);
string htmlz = srr.ReadToEnd();



in htmlz我有 ?JFIF ???`` > CREATOR:gd-jpeg v1.0(使用IJG) JPEG v80 ....。



如何将它作为jpeg文件保存到MemoryStream下载。我不使用Webclient。

解决方案

试试这种方式。

 WebRequest picrequest = WebRequest.Create(captchaUrl); 
使用(WebResponse response = picrequest.GetResponse()){
使用(Stream responseStream = response.GetResponseStream()){
Image myImage = Image.FromStream(responseStream);


}
}



编辑



然后你可以使用 Image.Save myImage c $ c>您想要的图像格式的方法。



http://msdn.microsoft.com/en-us/library/ytz20d80(v = vs.110)的.aspx

除了解决方案1:严格来说,为了将某些内容保存到文件中,您不需要知道它是图像还是其他内容。您可以透明地保存响应流。举个例子,请看我的HTTP下载器(按照他们的方式,可以在中断后继续下载部分下载的文件):如何从互联网上下载文件 [ ^ ]。



参见:

FTP:下载文件 [ ^ ],

如何从服务器下载文件在Asp.net 2.0 [ ^ ]。



-SA


When i make get request server response me jpeg file.

HttpWebRequest picrequest = (HttpWebRequest)HttpWebRequest.Create(captchaUrl);
HttpWebResponse picResponse = (HttpWebResponse)picrequest.GetResponse();
StreamReader srr = new StreamReader(picResponse.GetResponseStream(), Encoding.UTF8);
string htmlz = srr.ReadToEnd();


in htmlz i have "����JFIF``��>CREATOR: gd-jpeg v1.0 (using IJG JPEG v80....".

How save it to MemoryStream of download as jpeg file. I dont use Webclient.

解决方案

Try this way.

WebRequest picrequest = WebRequest.Create( captchaUrl );
using( WebResponse response = picrequest.GetResponse() ) {
    using( Stream responseStream = response.GetResponseStream() ) {
        Image myImage = Image.FromStream(responseStream);


    }
}


Edit

And then you can save myImage using Image.Save Method in the image format you want.

http://msdn.microsoft.com/en-us/library/ytz20d80(v=vs.110).aspx


In addition to Solution 1: strictly speaking, to save something to a file, you don't need to know that it is the image or something else. You can just transparently save the response stream we it is. For an example, please see my HTTP downloader (which, by they way, can continue downloading partially downloaded file after it was interrupted): how to download a file from internet[^].

See also:
FTP: Download Files[^],
how to download a file from the server in Asp.net 2.0[^].

—SA


这篇关于将响应内容保存到MemoryStream或Jpeg文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆