您的位置:首页 > 其它

bitmapimage与byte[]相互转换 --转

2010-05-15 13:31 337 查看
作者:飘遥(Zhenxing Zhou) tags:WPF Image byte WPF BitmapImage 有时要实现bitmapimage与byte[]相互转换,这里实现两个静态方法,直接调用即可。

byte[]转换为bitmapimage:
public static bitmapimage bytearraytobitmapimage(byte[] bytearray)
{
bitmapimage bmp = null;

try
{
bmp = new bitmapimage();
bmp.begininit();
bmp.streamsource = new memorystream(bytearray);
bmp.endinit();
}
catch
{
bmp = null;
}

return bmp;
}
bitmapimage转换为byte[]:
public static byte[] bitmapimagetobytearray(bitmapimage bmp)
{
byte[] bytearray = null;

try
{
stream smarket = bmp.streamsource;

if (smarket != null && smarket.length > 0)
{
//很重要,因为position经常位于stream的末尾,导致下面读取到的长度为0。
smarket.position = 0;

using (binaryreader br = new binaryreader(smarket))
{
bytearray = br.readbytes((int)smarket.length);
}
}
}
catch
{
//other exception handling
}

return bytearray;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: