我尝试了以下代码,用于从数据库中加载图片框中的图像。但每次都会收到类似' paramater is not valid
'的错误。
buttonSave()
{
.......
.......
img = Image.FromFile(strFileName);
byte[] byteImg = ImageToByteArray(img);
objEmp.Picture = byteImg;
.......
.......
}
public byte[] ImageToByteArray(Image img)
{
System.IO.MemoryStream ms = new System.IO.MemoryStream();
img.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
return ms.ToArray();
}
Display()
{
.......
.......
Byte[] bytePicData = (Byte[])dt.Rows[0]["PICTURE"];
MemoryStream stmPicData = new MemoryStream(bytePicData);
PicBox.Image = Bitmap.FromStream(stmPicData);}
.......
.......
}
答案 0 :(得分:1)
图像已损坏。错误来自FromStream方法。您可以写入磁盘,看看是否可以在图像视图中打开它。如果没有,请检查将其插入数据库的代码
Byte[] bytePicData = (Byte[])dt.Rows[0]["PICTURE"];
// Save
File.WriteAllBytes("out.bmp", bytePicData);
MemoryStream stmPicData = new MemoryStream(bytePicData);
PicBox.Image = BitMap.FromStream(stmPicData);