2013-05-03 3 views
-1

Я продолжаю получать ошибку GDI + всякий раз, когда я пытаюсь сохранить изображение в указанном строковом пути. Это код: Можете ли вы посоветуете?Преобразование массива байтов в изображение

 System.Drawing.Image newImage; 
     byte[] b= (byte[])Session["Image"]; 
     using (MemoryStream stream = new MemoryStream(b)) 
     { 
      newImage = System.Drawing.Image.FromStream(stream); 
      newImage.Save("C:\\test.png"); //this is where the GDI+ error is thrown 
      Image1.Attributes.Add("src", "C:\\test"); 

     } 
+2

Что такое ошибка? Выполняет ли пользователь сервер работу с доступом к записи на 'C: \'? –

+0

Ошибка говорит, что 'Session [" Image "]' содержит недопустимые данные. Покажите нам код, который привязывает (массив байтов - изображение) к 'Session'. – adatapost

+0

Chart1.SaveImage (m, ChartImageFormat.Png); // где m - переменная memystream Session.Add («Изображение», m.ToArray()); – user2343504

ответ

1

Вам нужно преобразовать байты в изображение, а затем снова преобразовать изображение в байты?

В противном случае вы можете просто сохранить байты непосредственно:

File.WriteAllBytes("C:\\test.png", (byte[])Session["Image"]); 
Смежные вопросы