我想能够从字节[]转换为图像,反之亦然。如何比较两个图像使用字节数组
我有这两种方法从here:
public byte[] imageToByteArray(System.Drawing.Image imageIn)
{
MemoryStream ms = new MemoryStream();
imageIn.Save(ms,System.Drawing.Imaging.ImageFormat.Gif);
return ms.ToArray();
}
public Image byteArrayToImage(byte[] byteArrayIn)
{
MemoryStream ms = new MemoryStream(byteArrayIn);
Image returnImage = Image.FromStream(ms);
return returnImage;
}
他们似乎工作,但如果我这样做:
byte[] pic = GetImageFromDb();
bool result = pic == imageToByteArray(byteArrayToImage(pic));
我得到result = false
!
任何方法来纠正这种方法或一些不同的功能,以实现我的目标?
谢谢!
同样的问题在这里: http://stackoverflow.com/questions/8763630/c-sharp-gif-image-to-memorystream-and-back-lose-animation 除了==东西 使用PIC。 equals(imageToByteArray(byteArrayToImage(pic)); – 2012-01-06 21:05:12
@OliverBernhardt尝试此代码'new byte [] {1} .Equals(new byte [] {1})' – 2012-01-06 21:12:05