acess中存储的图片经过传输后如何用vb显示或存储

来源:百度知道 编辑:UC知道 时间:2024/05/22 11:56:32
存储后用记事本打开发现前面和后面都加了东西,所以没办法正常打开
谢谢了,不过是我没说清楚,问题的关键不是单纯的读出或者存储,而是从ACESS中取出的OLE对象图片经过网络传输后,文件首尾都被加了东西,存储到本地(不是存到数据库)后没法正常显示图片

下面复制来的网上的方法,你也可以看人民邮电出版社的数据库编程的书,书上有关于Chunk法存储的例子

1、Chunk 大块方法:

保存:

'把图片文件放进数据库中:
Public Sub load_pic(rs As ADODB.Recordset, Form As Object)
Dim bit() As Byte
Dim fn As String
Form.Dialog1.Filter = "BMP文件(*.BMP)|*.BMP|PCX文件(*.PCX)|*.PCX|JPG文件(*.JPG)|*.JPG|"
Form.Dialog1.ShowOpen

If Len(Form.Dialog1.FileName) = 0 Then
Exit Sub
End If

fn = Form.Dialog1.FileName
Open fn For Binary As #1
ReDim bit(LOF(1)) As Byte
Get 1, 1, bit
Close 1

rs("图片").AppendChunk bit
rs.Update
End Sub

显示:

'把照片从数据库中读出
Public Sub get_tmp_pic(rs As ADODB.Recordset, Picture)
Dim img() As Byte
img = rs("图片").GetChunk(rs("图片").ActualSize)
If Dir(App.Path & "\pic.tmp") <> ""