读书人

大神们帮小弟我看看图片在数据库存储

发布时间: 2012-05-16 11:12:12 作者: rapoo

大神们,帮我看看图片在数据库存储读取问题。
上传的代码:

C# code
        private void upload_Click(object sender, EventArgs e)        {            //二进制来存储图片              FileStream stream = new FileStream(fName, FileMode.Open, FileAccess.Read);            byte[] buffer = new byte[stream.Length];            stream.Read(buffer, 0, (int)stream.Length);            stream.Close();            string sql = "insert into 图库(房屋编号,图片)values('" + "1" + "','" + buffer + "')";            SIUD.Insert_and_update(sql);            upload.Enabled = false;        }

读取代码:
C# code
        void read_picture()         {            byte[] imageBytes;            string sql = "select * from 图库 where 房屋编号='" + "1" + "'";            SqlDataReader dr = SIUD.dr_read_picture(sql);            if(dr.Read()){            imageBytes = (byte[])dr["图片"];//获取图片数据            //将内存流格式化为位图            MemoryStream stream = new MemoryStream(imageBytes);           Bitmap bmap = new Bitmap(stream);           // ms1.Close();            this.pictureBox1.Image = bmap;//将位图显示在界面的PictureBox控件中            }        }


MemoryStream stream = new MemoryStream(imageBytes)说是参数无效


[解决办法]
首先确保存进去的时候没有问题。
其次确认imageBytes已经被正确读取到。

显示为图片的代码:
Image img = Image.FromStream(new MemoryStream(imageBytes));
pictureBox1.Image = img;
[解决办法]
http://www.cnblogs.com/sufei/archive/2010/09/24/1834054.html
[解决办法]
楼主好像存储的方法有问题,不能直接通过Insert把图片插入到数据库里,建议看下下面的这个存储到数据库的方法:
http://www.cnblogs.com/wuzi145/archive/2012/05/04/2483529.html

读书人网 >C#

热点推荐