首頁 > 資料庫 > mysql教程 > PictureBox中的Image对象转存到数据库

PictureBox中的Image对象转存到数据库

WBOY
發布: 2016-06-07 15:48:03
原創
1258 人瀏覽過

这个是在百度知道上回答问题时看到的,一时没有做出来,看了一些资料才弄清楚的。 主要有两个点: 1.对流的操作不熟悉,不知道图片Image对象是可以”保存“到MemoryStream中的; image.Save(mstream, System.Drawing.Imaging.ImageFormat.Jpeg); 2.二进制数

这个是在百度知道上回答问题时看到的,一时没有做出来,看了一些资料才弄清楚的。

主要有两个点:

1.对流的操作不熟悉,不知道图片Image对象是可以”保存“到MemoryStream中的;

image.Save(mstream, System.Drawing.Imaging.ImageFormat.Jpeg);
登入後複製

2.二进制数据插入到数据库的操作不清楚。

SqlParameter param = new SqlParameter("ImgData", SqlDbType.VarBinary, imageBytes.Length);
param.Value = imageBytes;
cmd.Parameters.Add(param);
登入後複製

下面贴上代码

private void button1_Click(object sender, EventArgs e)
        {
            byte[] imageBytes = GetImageBytes(pictureBox1.Image);

            string connStr = "SQL Server连接字符串";

            using (SqlConnection conn = new SqlConnection(connStr))
            {
                string sql = "Insert Into T_Img Values (@ImgData) ";
                using (SqlCommand cmd = new SqlCommand(sql))
                {
                    SqlParameter param = new SqlParameter("ImgData", SqlDbType.VarBinary, imageBytes.Length);
                    param.Value = imageBytes;
                    cmd.Parameters.Add(param);

                    cmd.Connection = conn;
                    conn.Open();
                    int i = cmd.ExecuteNonQuery();
                    MessageBox.Show(i.ToString());
                }
            }
        }
        private byte[] GetImageBytes(Image image)
        {
            MemoryStream mstream = new MemoryStream();
            image.Save(mstream, System.Drawing.Imaging.ImageFormat.Jpeg);
            byte[] byteData = new Byte[mstream.Length];
            mstream.Position = 0;
            mstream.Read(byteData, 0, byteData.Length);
            mstream.Close();
            return byteData;
        }
登入後複製

                   

                                              PictureBox中的Image对象转存到数据库

上传了源代码:http://download.csdn.net/detail/frombegintoend/4403728

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板