rajantawate1著
C# Image to Byte Array and Byte Array to Image Converter Class
简介
目前,我需要一个System.Drawing.Image转换成byte[]数组的功能,当然,也需要反过来转换它们。在google上搜索一番之后我发现,或许最快的办法是实现它,然后和大家共享。
我把这个功能用在与Web服务器之间传输图像。
我写的这个类叫ImageConverter.cs,它有两个方法。
第一个用于转换Image到byte[] 数组:
public byte[] imageToByteArray(System.Drawing.Image imageIn)
{
MemoryStream ms = new MemoryStream();
imageIn.Save(ms,System.Drawing.Imaging.ImageFormat.Gif);
return ms.ToArray();
}
这个方法用System.Drawing.Image.Save方法保存图像到memorystream,memorystream再返回一个byte数组。
第二个用于转换byte[]到Image:
public Image byteArrayToImage(byte[] byteArrayIn)
{
MemoryStream ms = new MemoryStream(byteArrayIn);
Image returnImage = Image.FromStream(ms);
return returnImage;
}
这个方法先创建byte[]数组的MemoryStream,然后,再使用Image类的Image.FromStream方法从MemoryStream中转换图像。