将图片的二进制字节 在HTML页面中显示

本文详细介绍了如何使用Imge.ashx作为后端处理程序来处理图像,包括两种方法:一种是将图像内容保存到内存流中并进行格式转换,另一种是从文件系统读取图像内容并直接输出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

两种方法:

后端的一般处理程序:Imge.ashx

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Web;
 5 using System.Web.UI.WebControls;
 6 
 7 namespace Test
 8 {
 9     /// <summary>
10     /// Imge 的摘要说明
11     /// </summary>
12     public class Imge : IHttpHandler
13     {
14 
15         public void ProcessRequest(HttpContext context)
16         {
17 
18             #region 方法一
19             System.IO.MemoryStream ms = new System.IO.MemoryStream();
20             System.IO.Stream str = new FileUpload().PostedFile.InputStream;
21             System.Drawing.Bitmap map = new System.Drawing.Bitmap(str);
22             map.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
23             context.Response.ClearContent();
24             context.Response.ContentType = "image/Jpeg";
25             context.Response.BinaryWrite(ms.ToArray());  //将二进制字节输出到页面 
26             #endregion
27 
28             #region 方法二
29             System.IO.FileStream fs = new System.IO.FileStream("Filename", System.IO.FileMode.Open, System.IO.FileAccess.Read);
30             byte[] datas = new byte[fs.Length];
31             fs.Read(datas, 0, Convert.ToInt32(fs.Length));
32             fs.Close();
33             context.Response.OutputStream.Write(datas, 0, Convert.ToInt32(fs.Length));
34             context.Response.End();
35             #endregion
36         }
37 
38         public bool IsReusable
39         {
40             get
41             {
42                 return false;
43             }
44         }
45     }
46 }
View Code

HTML页面代码:

1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head>
4     <title></title>
5 </head>
6 <body>
7 <img src="/Imge.ashx" />  <!---图片的src指向Imge.ashx 就可以--->
8 </body>
9 </html>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值