关于 数据库中 读写 Blob 字段的正确做法。

被一个小问题给恶心了一回。

留影,备查。

 1 class BolbHelper
 2     {
 3         /// <summary>
 4         /// 将图像转为二进制字节数组
 5         /// </summary>
 6         /// <param name="image"></param>
 7         /// <returns></returns>
 8         public static byte[] ImageToBinaryBytes(Image image)
 9         {
10             byte[] result;
11             using (var ms = new MemoryStream())
12             {
13                 image.Save(ms, ImageFormat.Bmp);
14                 using(var br = new BinaryReader(ms))
15                 {
16                     ms.Seek(0, SeekOrigin.Begin);
17                     result = br.ReadBytes((int)ms.Length);
18                     br.Close();
19                 }
20                 ms.Close();
21             }
22             return result;
23         }
24 
25         /// <summary>
26         /// 从二进制字节数组读取图像
27         /// </summary>
28         /// <param name="data"></param>
29         /// <returns></returns>
30         public static Image ImageFromBinaryBytes(byte[] data)
31         {
32             Image result;
33             using (var ms = new MemoryStream())
34             {
35                 using(var bw = new BinaryWriter(ms))
36                 {
37                     bw.Write(data);
38                     result = Image.FromStream(ms);
39                     bw.Close();
40                 }
41                 ms.Close();
42             }
43             return result;
44         }
45     }

 

转载于:https://www.cnblogs.com/goldli/archive/2013/05/15/3079026.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值