如何将System.Byte []转换为图像

时间:2011-12-21 10:32:04

标签: c# windows winforms

嗨我有以下代码,其中数据变量已经填充了来自数据库的字节数组现在当我想将数据库中的这些存储的字节转换为图像并希望在图片框中显示它时它给出了错误

pictureBox1.Image = Image.FromStream(ms);

错误是参数无效。我应该怎样做以下代码:

byte[] data = (byte[])ds.Tables[0].Rows[i][7];
MemoryStream ms = new MemoryStream(data);
ms.Write(data, 0, data.Length);
ms.Position = 0;
//Image img= Image.FromStream(ms);

pictureBox1.Image = Image.FromStream(ms);

1 个答案:

答案 0 :(得分:0)

你的代码看起来很好;可能是您保存的图像格式不正确。 这可能也有帮助:http://msdn.microsoft.com/en-us/library/93z9ee4x.aspx

此外,尝试将CanWrite属性设置为True:

MemoryStream ms = new MemoryStream(data,true);

修改  正如您所问:数据类型应为Image,我建议始终使用PNG格式而不是GIF。