public static byte[] GetBytesFromImage(Image image, ImageFormat format)
{
try
{
MemoryStream ms = new MemoryStream();
image.Save(ms, format);
return ms.GetBuffer();
}
catch (System.Exception e)
{
throw new System.Exception("处理图像时发生错误!错误原因:" + e.Message);
}
}
public void SaveImage()
{
Image img1 = (Image)Resources._2;
byte[] bytes= GetBytesFromImage(img1, ImageFormat.Png);
SqlConnection conn = SqlHelper.GetConnection();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = "update Test set Image=@Image";
cmd.Parameters.Add("@Image", SqlDbType.Image);
cmd.Parameters[0].Value = str1;
cmd.ExecuteNonQuery();
conn.Close();
}
public static Image GetImageFromBytes(byte[] bytes)
{
//读取图象
byte[] BLOBData = bytes;
MemoryStream MsBLOBData = null;
try
{
MsBLOBData = new MemoryStream(BLOBData);
return Image.FromStream(MsBLOBData);
}
catch (Exception e)
{
throw new System.Exception("转换图像时发生错误!错误原因:" + e.Message);
}
}
public void GetImage()
{
string CmdText = "Select Image from test where id=1";
pictureBox1.Image= GetImageFromBytes((byte[])SqlHelper.ExecuteScalar(CmdText));
}