C # Как сохранить изображение из OLE-объекта, хранящегося в базе данных - PullRequest
1 голос
/ 14 июля 2011

Кажется, что байты заголовка сохраняются вместе с изображением, когда они встраиваются в базу данных доступа в виде 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);
 }

1 Ответ

1 голос
/ 14 июля 2011
using (MemoryStream stream = new MemoryStream(photo))
using (Image image = Image.FromStream(stream))
{
    image.Save(@"C:\Temp\images\test.jpg", ImageFormat.Jpeg);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...