生成圖片的URL假設是這樣:http://localhost/administrator/qrcode.aspx?pid=78qrcode.aspx.cs的生成圖片的部分代碼:Image image = new Bitmap(200, 200);
Graphics g = Graphics.FromImage(image);try{
string url="http://localhost";
DotNetBarcode bc = new DotNetBarcode();
bc.Type = DotNetBarcode.Types.QRCode;
bc.PrintCheckDigitChar = true;
bc.WriteBar(url, 0, 0, 210, 210, g);
System.IO.MemoryStream ms = new System.IO.MemoryStream();
image.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
Response.ClearContent();
Response.ContentType = "image/Png";
Response.BinaryWrite(ms.ToArray());
ms.Dispose();
}finally{
g.Dispose();
image.Dispose();
}現在如果我要輸入http://localhost/administrator/qrcode.aspx?pid=78&download=true就下載圖片到本地要怎么做?
1 回答

Smart貓小萌
TA貢獻1911條經驗 獲得超7個贊
主要是讓瀏覽器直接下載文件而不是打開文件。
要做兩步。
一就是把響應頭的類型設置成application/octet-stream
。
二就是設置HTTP響應頭的名字為Content-Disposition
,設定值為attachment; filename=theFilename。這里的theFileName就是文件下載對話框里面的默認文件名。
Response.ClearContent(); Response.ContentType = "application/octet-stream"; Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode("qrcode.png", System.Text.Encoding.UTF8)); Response.BinaryWrite(ms.ToArray());
- 1 回答
- 0 關注
- 2021 瀏覽
添加回答
舉報
0/150
提交
取消