C#操作图片读取和存储SQLserver实现代码
发布时间:2020-12-12 07:34:10 所属栏目:MsSql教程 来源:网络整理
导读:一、用C#将Image转换成byte[]并插入数据库: 1.1 将图片控件的Image转换成流: 复制代码 代码如下: private byte[] PicToArray() { Bitmap bm = new Bitmap(picBox.Image); MemoryStream ms = new MemoryStream(); bm.Save(ms,ImageFormat.Jpeg); return ms.G
一、用C#将Image转换成byte[]并插入数据库: 1.1 将图片控件的Image转换成流: 复制代码 代码如下: private byte[] PicToArray() { Bitmap bm = new Bitmap(picBox.Image); MemoryStream ms = new MemoryStream(); bm.Save(ms,ImageFormat.Jpeg); return ms.GetBuffer(); } 复制代码 代码如下: //保存到数据库 try { string sql = "update T_Employee set ImageLogo=@ImageLogo where EmpId=@EmpId"; SqlHelper.ExecuteNonQuery(sql,new SqlParameter("@ImageLogo",imgSourse)); MessageBox.Show("修改已保存!");// ShowInfo(0); } catch (Exception ex) { MessageBox.Show("更新失败!" + ex.Message); return; } 1.2将图片文件转换成字节流并插入数据库: 复制代码 代码如下: class ImageInserter { public static int InsertImg(string path) { //----------以文件的方式读取图片并转化成字节流 FileStream fs = new FileStream(path,FileMode.Open); byte[] imgSourse = new byte[fs.Length]; fs.Read(imgSourse,imgSourse.Length); fs.Close(); using (SqlConnection conn = new SqlConnection(SqlHelper.connStr)) { conn.Open(); using (SqlCommand cmd = conn.CreateCommand()) { cmd.CommandText = "update T_Employee set ImageLogo=@ImageLogo"; // cmd.Parameters.Add("@ImageLogo",SqlDbType.Image); cmd.Parameters.Add(new SqlParameter("@ImageLogo",imgSourse)); return cmd.ExecuteNonQuery(); } } } 二、将图片数据从SQLserver中取出来并显示到pictureBox控件上: 复制代码 代码如下: byte[] ImageLogoArray = row["ImageLogo"] is DBNull ? null :(byte[])(row["ImageLogo"]); MemoryStream ms=null; if (ImageLogoArray!=null) { ms = new MemoryStream(ImageLogoArray); picBox.Image = new Bitmap(ms); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |