項目中前一次遇到位元組數組轉化為圖片時偶爾出現“GDI+中發生一般性錯誤”,這回是圖片轉化為位元組數組時出現這種情況。經研究解決辦法如下,原代碼(出錯代碼)如下:
1.public static byte[] imageToByteArray(Image imageIn)2.{3. using (MemoryStream ms = new MemoryStream())4. {5. if (imageIn != null)6. { 7. imageIn.Save(ms,ImageFormat.Jpeg); 8. }9. return ms.ToArray(); 10. }11.}
方法一:
1.public static byte[] imageToByteArray(Image imageIn)2.{3. using (MemoryStream ms = new MemoryStream())4. {5. if (imageIn != null)6. {7. Bitmap t=new Bitmap (imageIn);8. t.Save(ms,System.Drawing.Imaging.ImageFormat.Jpeg); 9. }10. return ms.ToArray(); 11. }12.}
方法二:
1.public static byte[] imageToByteArray(Image imageIn)2.{3. using (MemoryStream ms = new MemoryStream())4. {5. if (imageIn != null)6. { 7. Bitmap pic = new Bitmap(imageIn.Width, imageIn.Height);8. Graphics g = Graphics.FromImage(pic);9. g.DrawImage(imageIn, 0, 0, imageIn.Width, imageIn.Height);10. g.Dispose();11. pic.Save(ms, ImageFormat.Jpeg);12. pic.Dispose(); 13. }14. return ms.ToArray(); 15. }16.}