[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发,具体问下图片问题 __________________________________________________________________________

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...