將base 64字符串轉換為圖像并保存這是我的代碼:protected void SaveMyImage_Click(object sender, EventArgs e)
{
string imageUrl = Hidden1.Value;
string saveLocation = Server.MapPath("~/PictureUploads/whatever2.png") ;
HttpWebRequest imageRequest = (HttpWebRequest)WebRequest.Create(imageUrl);
WebResponse imageResponse = imageRequest.GetResponse();
Stream responseStream = imageResponse.GetResponseStream();
using (BinaryReader br = new BinaryReader(responseStream))
{
imageBytes = br.ReadBytes(500000);
br.Close();
}
responseStream.Close();
imageResponse.Close();
FileStream fs = new FileStream(saveLocation, FileMode.Create);
BinaryWriter bw = new BinaryWriter(fs);
try
{
bw.Write(imageBytes);
}
finally
{
fs.Close();
bw.Close();
}
}}頂部imageUrl聲明采用Base64圖像字符串,我想將其轉換為圖像。我認為我的代碼集僅適用于像“www.mysite.com/test.jpg”這樣的圖像而不適用于Base64字符串。有人有什么建議嗎?謝謝!
3 回答

蕭十郎
TA貢獻1815條經(jīng)驗 獲得超13個贊
下面是一個示例,您可以修改方法以接受字符串參數(shù)。然后用.Save()保存圖像對象。
public Image LoadImage(){ //data:image/gif;base64, //this image is a single pixel (black) byte[] bytes = Convert.FromBase64String("R0lGODlhAQABAIAAAAAAAAAAACH5BAAAAAAALAAAAAABAAEAAAICTAEAOw=="); Image image; using (MemoryStream ms = new MemoryStream(bytes)) { image = Image.FromStream(ms); } return image;}
A generic error occurred in GDI+.
當字節(jié)表示位圖時,可能會出現(xiàn)異常。如果發(fā)生這種情況,請在處理內(nèi)存流之前保存圖像(同時仍在using語句中)。
- 3 回答
- 0 關注
- 474 瀏覽
添加回答
舉報
0/150
提交
取消