c#如何从OLE对象中保存图像存储在数据库中

本文关键字:保存 图像 数据库 存储 对象 OLE | 更新日期: 2023-09-27 18:02:00

似乎头字节与图像一起存储,当它作为OLE对象嵌入到访问数据库中时,它们阻止我写入存储到磁盘的字节,因为它引发了一个异常'在GDI+中发生的一般错误'。

如何从存储在访问数据库中的OLE对象中提取图像字节,然后保存到磁盘?

photo = ((rs.Fields["photo"].Value == System.DBNull.Value) ? 
    null : (byte[])rs.Fields["photo"].Value)
...
if (photo != null)
{
    MemoryStream stream = new MemoryStream(photo);
    Image image = new Bitmap(stream);
    stream.Close();
    image.Save(@"C:'Temp'images'test", ImageFormat.Jpeg);
 }

c#如何从OLE对象中保存图像存储在数据库中

using (MemoryStream stream = new MemoryStream(photo))
using (Image image = Image.FromStream(stream))
{
    image.Save(@"C:'Temp'images'test.jpg", ImageFormat.Jpeg);
}