字节数组:GDI+中发生一般性错误之图片转化为字节数组



项目中前次遇到字节转化为图片时偶尔出现“GDI+中发生般性这回是图片转化为字节时出现这种情况经研究解决办法如下:
原代码(出错代码)如下:


public imageToByteArray(Image imageIn)
{
using (MemoryStream ms = MemoryStream)
{
(imageIn != null)
{
imageIn.Save(ms,ImageFormat.Jpeg);
}
ms.ToArray;
}
}


思路方法:


public imageToByteArray(Image imageIn)
{
using (MemoryStream ms = MemoryStream)
{
(imageIn != null)
{
Bitmap t= Bitmap (imageIn);
t.Save(ms,.Drawing.Imaging.ImageFormat.Jpeg);
}
ms.ToArray;
}
}
思路方法 2:

public imageToByteArray(Image imageIn)
{
using (MemoryStream ms = MemoryStream)
{
(imageIn != null)
{
Bitmap pic = Bitmap(imageIn.Width, imageIn.Height);
Graphics g = Graphics.FromImage(pic);
g.DrawImage(imageIn, 0, 0, imageIn.Width, imageIn.Height);
g.Dispose;
pic.Save(ms, ImageFormat.Jpeg);
pic.Dispose;
}
ms.ToArray;
}
}
两种思路方法实际上都是新建了个和原图副本找到这么句话“Bitmap 对象或个 图像 对象从个文件, 构造时该文件仍保留锁定对于对象生存期 因此, 无法更改图像并将其保存回它产生相同文件”个人认为发生GDI+般性原因是对象引用和对象生存期问题
Tags:  二维数组 java数组 javascript数组 字节数组

延伸阅读

最新评论

发表评论