[VB.NET]如何把一个图片保存到access中,又如何把它读取出来,并在picturebox中显示?

前端之家收集整理的这篇文章主要介绍了[VB.NET]如何把一个图片保存到access中,又如何把它读取出来,并在picturebox中显示?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何把一个图片保存到access中,又如何把它读取出来,并在pictureBox显示? 如何把一个图片保存到access的数据表中,又如何把它读取出来,并在pictureBox显示? __________________________________________________________________________ 在数据库中保存图片的名字.然后读出名字不就可以了吗 __________________________________________________________________________ 我是要把图片放在数据库中,不是图片的地址 __________________________________________________________________________ 对图片对象序列化为二进制流存入数据库,读取后反序列化为图片对象。 没有搞过,但我想这样应该可以的,希望对你有所帮助。 __________________________________________________________________________ 谢谢你们了。最后我用的还是在数据库中存图片地址的方法。 __________________________________________________________________________ 楼主,图片地址对应的图片在pictureBox显示代码怎么写 __________________________________________________________________________ 我现在也碰到图片保存显示的问题,我的放在sql server,所以想参考一下你的界面和代码. 做毕业设计用,如果方便的话,发我email:allen9507@sina.com __________________________________________________________________________ 楼主帮忙 __________________________________________________________________________ access的我以前给一朋友写过一个这样的列子,有需要和我联系啊。到时候发给你 我的Mail:gcpony@gmail.com __________________________________________________________________________ 直接帖代码吧,更快一些。呵呵 存图片的字段类型了:OLE 对象 private void Form1_Load(object sender,System.EventArgs e) { //init DbConnection; ConStr= Provider=Microsoft.Jet.OLEDB.4.0;Data Source= +Application.StartupPath+ //imageToAccess.mdb ; myConnection = new OleDbConnection(ConStr); } private void button1_Click(object sender,System.EventArgs e) { //get file info string filePath=Application.StartupPath+ //it.jpg ; FileInfo fi=new FileInfo(filePath); FileStream fileStream=fi.OpenRead(); int length=(int)fileStream.Length; byte[] fileData=new byte[length]; fileStream.Read(fileData,length); //sql OleDbCommand command = new OleDbCommand ( INSERT INTO t1 (filename,fileData) + VALUES (@filename,@fileData),myConnection); //add para 1 System.Data.OleDb.OleDbParameter parafileName = new OleDbParameter( @filename,System.Data.OleDb.OleDbType.VarChar,50); parafileName.Value = it.jpg ; command.Parameters.Add(parafileName); //add para2 System.Data.OleDb.OleDbParameter paramPersonImage = new OleDbParameter( @fileData,System.Data.OleDb.OleDbType.Binary); paramPersonImage.Value = fileData; command.Parameters.Add(paramPersonImage); //Excute this.OpenDB(); command.ExecuteNonQuery(); myConnection.Close(); } private void button2_Click(object sender,System.EventArgs e) { this.OpenDB(); string strSel= select * from t1 order by id desc ; OleDbCommand cmd=new OleDbCommand(strSel,myConnection); OleDbDataReader dr=cmd.ExecuteReader(); if(dr.Read()) { byte[] by=(byte[])dr.GetValue(2); MemoryStream ms=new MemoryStream(by); Image img=Image.FromStream(ms); pb.Image=img; } } private void OpenDB() { if(myConnection.State.ToString()== Closed ) { myConnection.Open(); } } } } __________________________________________________________________________ WinForm中存地址好象不太好吧。要是别的机器访问怎么办呢?我上面的代码就是存数据库的。其实原理大家都知道的呀,就是把文件流写进去,最后也只是读文件流然后赋值给控件就可以了。 __________________________________________________________________________ 楼上的,能+我qq:232530181发,具体问下图片问题 __________________________________________________________________________

猜你在找的VB相关文章