| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2537 人关注过本帖
标题:数据库怎么存图片呀
只看楼主 加入收藏
heqinwu8
Rank: 2
来 自:黄土高坡
等 级:论坛游民
帖 子:65
专家分:58
注 册:2009-7-11
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:12 
数据库怎么存图片呀
方法或具体代码都可以
就是QQ头像那样,不知道怎么将头像图片存到数据库并取出来
还望大家不吝赐教呀
搜索更多相关主题的帖子: 数据库 
2009-12-29 18:46
zhaoxili
Rank: 6Rank: 6
等 级:侠之大者
威 望:1
帖 子:327
专家分:479
注 册:2009-1-3
收藏
得分:0 
一般使用的应该是转化成二进制储存  具体等高手付代码吧
2009-12-29 20:29
dwwwing
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:1
帖 子:284
专家分:986
注 册:2008-10-11
收藏
得分:10 

存放的二进制数据如下:
                string fullpath = openFileDialog1.FileName;
                FileStream fs = new FileStream(fullpath, FileMode.Open);
                byte[] imagebytes = new byte[fs.Length];
                BinaryReader br = new BinaryReader(fs);
                imagebytes = br.ReadBytes(Convert.ToInt32(fs.Length));

读取如下:
           byte[] imagebytes = null;
            //从数据库中读取出数据赋值给imagebytes  ----
            MemoryStream ms = new MemoryStream(imagebytes);
            Bitmap bmpt = new Bitmap(ms);
            pictureBox1.Image = bmpt;

期间我省略了写入数据库跟从数据库取出数据的代码。因为这个比较简单。
2009-12-29 20:35
dhbest
Rank: 2
等 级:论坛游民
帖 子:55
专家分:89
注 册:2008-10-31
收藏
得分:0 
也可以存路径呀!
2009-12-31 00:37
vxbb
Rank: 6Rank: 6
等 级:侠之大者
帖 子:163
专家分:440
注 册:2008-8-18
收藏
得分:10 
回复 楼主 heqinwu8
我做了个数据压缩、编码的示例。
用的是Base64编码 Gzip压缩。
DataCompression.rar (61.17 KB)

图片附件: 游客没有浏览图片的权限,请 登录注册

QQ:491697374  Mail:vxbb@
2009-12-31 10:13
ginpq
Rank: 2
等 级:论坛游民
帖 子:34
专家分:50
注 册:2007-8-21
收藏
得分:0 
学习.                        
2009-12-31 13:32
quanshui
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2004-11-17
收藏
得分:0 
学习学习
2010-01-12 19:25
风淡云天
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2010-1-12
收藏
得分:0 
不错不错,学习了
2010-01-12 20:26
snowprince
Rank: 2
来 自:武汉
等 级:论坛游民
帖 子:108
专家分:48
注 册:2009-5-1
收藏
得分:0 
存图片进去:
            openFileDialog1.ShowDialog();
            if (openFileDialog1.FileName.Trim() != null)
            {
                openFileDialog1.Filter = "(图片*jpg)|*jpg";
                _fileName = openFileDialog1.FileName;
                FileStream fs = new FileStream(_fileName, FileMode.OpenOrCreate);
                byte[] data = new byte[fs.Length];
                fs.Read(data, 0, data.Length);
                fs.Close();
                try
                {
                    SqlConnection conn = new SqlConnection(ConnStr);
                    conn.Open();
                    SqlCommand com = new SqlCommand("insert into Test(TestID,TestPic,TestName) values(1,@TestPic,'" + _fileName + "')", conn);
                    com.Parameters.Add("TestPic", SqlDbType.Image);
                    com.Parameters["TestPic"].Value = data;
                    int intFalg = com.ExecuteNonQuery();
                    if (intFalg == 1)
                    {
                        MessageBox.Show("保存图片成功");
                    }
                    else
                    {
                        MessageBox.Show("保存图片失败");
                    }
                    conn.Close();
                }
                catch(Exception ex)
                {
                    MessageBox.Show(ex.ToString());
                }

读取图片:
            string sql = "select TestPic from Test where TestID=1";
            SqlConnection conn = new SqlConnection(ConnStr);
            conn.Open();
            SqlCommand cmd = new SqlCommand(sql, conn);
            SqlDataReader dr = cmd.ExecuteReader();
            if (dr.Read())
            {
                byte[] mydata = (byte[])dr[0];
                MemoryStream myStream = new MemoryStream(mydata);
                Bitmap bit = new Bitmap(myStream);
                pictureBox1.Image = bit;
                myStream.Close();
            }
            dr.Close();
            conn.Close();


数据库中存图片时用image类型就可以了   前几天正好做了这个方面的东西    看看吧
2010-01-15 20:03
zhmi_1015
Rank: 2
等 级:论坛游民
帖 子:19
专家分:10
注 册:2010-1-19
收藏
得分:0 
楼上的,我按照你的代码执行,出现错误。错误信息:文件“F:\174597.jpg”正由另一进程使用,因此该进程无法访问该文件。怎么解决?
2010-01-19 21:56
快速回复:数据库怎么存图片呀
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019569 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved