首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

数据存取、转换有关问题,请各位指教

2011-12-15 
数据存取、转换问题,请各位指教privatevoidbutton2_Click(objectsender,EventArgse){//找图片//取得textbox

数据存取、转换问题,请各位指教
private   void   button2_Click(object   sender,   EventArgs   e)
                {
                        //找图片
                        //取得textbox中的数
                        string   num   =   textBox1.Text;
                        string   conn   =   ( "Provider=Microsoft.Jet.OLEDB.4.0;Data   Source=E:\\test.mdb; ");
                        OleDbConnection   myconn   =   new   OleDbConnection(conn);
                       
                        string   query   =   "select   *   from   graph   where   id= ' "   +   num   +   " '   ";
                        OleDbCommand   mycommand   =   new   OleDbCommand(query,   myconn);
                        //取图片
                        try
                        {
                                myconn.Open();

                        }
                        catch
                        {
                                MessageBox.Show( "   不能打开数据联接! ");
                        }

                      OleDbDataReader   dr   =   mycommand.ExecuteReader();
                        MessageBox.Show( "图片已找到! ");
                        if   (dr.Read())
                        {
                              byte[]   mydata   =   (byte[])dr[ "photo "];   //缓冲区      
                              int   len   =   mydata.Length;                           //缓冲区长度

                              FileStream   fs   =   new   FileStream( "E:\\6.jpg ",     FileMode.Create,   FileAccess.Write);
                              fs.Write(mydata,   0,   len);


                              fs.Close();

                                //显示
                                FileInfo   fi   =   new   FileInfo( "E:\\6.jpg ");
                                int   imglen   =   (int)fi.Length;
                                byte[]   imgdata   =   new   byte[imglen];
                                Stream   imgStream   =   fi.OpenRead();
                                int   n   =   imgStream.Read(imgdata,   0,   imglen);

                                Image   myImage   =   Image.FromStream(imgStream);
                                imgStream.Close();
                                pictureBox1.Image   =   myImage;
                                pictureBox1.Refresh();

                                myconn.Close();

                        }
                }
我要做的是从表里读一个2进制的记录,然后在picbox里显示出来,这个2进制数是我存的图片,但是数据取得时候还有转换的时候我感觉不太对
Image   myImage   =   Image.FromStream(imgStream);
imgStream参数报错   说是无效的。请大家指教

[解决办法]
我这个也算沙发,
[解决办法]
对图片不熟,帮顶

[解决办法]
FileInfo fi = new FileInfo( "E:\\6.jpg ");
int imglen = (int)fi.Length;
byte[] imgdata = new byte[imglen];
Stream imgStream = fi.OpenRead();
int n = imgStream.Read(imgdata, 0, imglen);

Image myImage = Image.FromStream(imgStream);
imgStream.Close();
pictureBox1.Image = myImage;
pictureBox1.Refresh();

myconn.Close();
这几句是没有问题的,我试过了,关键看你从数据库中取出来没有?

热点排行