VB将PDF流写入ACCESS数据库,通过AcroPDF控件读出PDF流之实现
问题描述:
1.把pdf文件写入access
2.读出时用AcroPDF控件
问题解答:
使用流对象保存和显示图片与文件
打开vb6,新建工程。
添加两个按钮,一个image控件
注意:Access中的photo字段类型为OLE对象.
SqlServer中的photo字段类型为Image
'**
引用 Microsoft ActiveX Data Objects 2.5 Library
及以上版本
‘2.5版本以下不支持Stream对象
Dim iConcstr As String
Dim iConc As
ADODB.Connection
'保存文件到数据库中
Sub s_SaveFile()
Dim iStm As
ADODB.Stream
Dim iRe As ADODB.Recordset
Dim iConcstr As
String
'读取文件到内容
Set iStm = New ADODB.Stream
With iStm
.Type =
adTypeBinary '二进制模式
.Open
.LoadFromFile App.Path + "\test.jpg"
End
With
'打开保存文件的表
Set iRe = New ADODB.Recordset
With
iRe
.Open "select * from img", iConc, 1, 3
.AddNew
'新增一条记录
.Fields("photo") = iStm.Read
.Update
End With
'完成后关闭对象
iRe.Close
iStm.Close
End Sub
Sub
s_ReadFile()
Dim iStm As ADODB.Stream
Dim iRe As
ADODB.Recordset
'打开表
Set iRe = New
ADODB.Recordset
‘得到最新添加的纪录
iRe.Open "select top 1 * from img order by id
desc", iConc, adOpenKeyset, adLockReadOnly
'保存到文件
Set iStm = New
ADODB.Stream
With iStm
.Mode = adModeReadWrite
.Type =
adTypeBinary
.Open
.Write
iRe("photo")
‘这里注意了,如果当前目录下存在test1.jpg,会报一个文件写入失败的错误.
.SaveToFile App.Path
& "\test1.jpg"
End With
Image1.Picture =
LoadPicture(App.Path &
"\test1.jpg")
'关闭对象
iRe.Close
iStm.Close
End Sub
Private
Sub Command1_Click()
Call s_ReadFile
End Sub
Private Sub
Command2_Click()
Call s_SaveFile
End Sub
Private Sub
Form_Load()
'数据库连接字符串
iConcstr = "Provider=Microsoft.Jet.OLEDB.4.0;Persist
Security Info=False" & _
";Data
Source=F:\csdn_vb\database\保存图片\access图片\img.mdb"
‘下面的语句是连接sqlserver数据库的.
‘iConcstr
= "Provider=SQLOLEDB.1;Persist Security Info=True;" & _
‘ "User
ID=sa;Password=;Initial Catalog=test;Data Source=yang"
Set iConc =
New ADODB.Connection
iConc.Open iConcstr
End Sub
Private Sub
Form_Unload(Cancel As Integer)
iConc.Close
Set iConc = Nothing
End Sub
摘要:PDF文件可以当作图片来保存,参考:http://download.csdn.net/source/1467817
VB将PDF流写入ACCESS数据库,通过AcroPDF控件读出PDF流之实现的更多相关文章
- 如何使用免费PDF控件从PDF文档中提取文本和图片
如何使用免费PDF控件从PDF文档中提取文本和图片 概要 现在手头的项目有一个需求是从PDF文档中提取文本和图片,我以前也使用过像iTextSharp, PDFBox 这些免费的PD ...
- VB高效导入Excel2003和Excel2007文件到MSHFlexGrid控件显示
1.VB高效导入Excel2003和Excel2007文件到MSHFlexGrid控件显示 2.以前也有Excel导入通用功能,但速度有些慢一会把两种实现方式都提供出为参考对比. 一.原通用导入exc ...
- 如何显示二进制流的图片(利用img控件)
之前在http://www.cnblogs.com/JsonZhangAA/p/5568575.html博文中是利用的image控件来显示的二进制流图片,我现在想的是能 通过普通的<img id ...
- Android控件进阶-自定义流式布局和热门标签控件
技术:Android+java 概述 在日常的app使用中,我们会在android 的app中看见 热门标签等自动换行的流式布局,今天,我们就来看看如何 自定义一个类似热门标签那样的流式布局吧,类 ...
- SQLite数据库、ListView控件的使用
android下数据库的创建(重点) 在Android平台上,集成了一个轻量级嵌入式关系型数据库—SQLite,SQLite3支持 NULL.INTEGER.REAL(浮点数字).TEXT(字符串文本 ...
- 使用数据库绑定ListBox控件
1. The HTML Markup <div> <asp:ListBox ID="ListBox1" runat="server">& ...
- 在VB中动态执行VBS代码,可操控窗体控件
通过执行一段VBS代码来操控窗体内的控件也可以使用AddObject方法添加自己的类,那么在动态VBS代码中也一样可以使用在增加程序扩展性或是有脚本化需求的时候,这个方法还是不错的. Option E ...
- C#与数据库有关的控件和属性
BindingNavigator 数据记录导航 BindingSource 与数据源绑定, 常用属性:DataSource.DataMember 常用方法: DataGridView 以表格形式显示 ...
- PDF创建及动态转换控件程序包ActivePDF Portfolio
ActivePDF Portfolio是将4个activePDF最优秀的服务器产品捆绑成一个价格适中的控件程序包.它提供了开发一个完整的服务器端的PDF解决方案所需的一切. 具体功能: activeP ...
随机推荐
- beeline连接hive server遭遇MapRedTask (state=08S01,code=1)错误
采用beeline连接hive server是遭遇到如下错误: 5: jdbc:hive2://bluejoe0/default> select * from hive_triples wher ...
- iOS 之美:iOS Delegate 使用五步曲
在iOS 开发中, 搞清楚Delegate 是需要花些时间的. Delegate 本来是软件架构设计的一种理念.对于像手机这样一个有限的设备,我们需要充分考虑到:内存要尽量省着用: 视图之间的关系要清 ...
- EXCEL跨工作薄查找。提取信息
=IF(ISERROR(INDEX(zdy!$B:$B,MATCH(B15,zdy!$B:$B,0))),"不存在",INDEX(zdy!$C:$C,MATCH(B15,zdy!$ ...
- HDU(搜索专题) 1000 N皇后问题(深度优先搜索DFS)解题报告
前几天一直在忙一些事情,所以一直没来得及开始这个搜索专题的训练,今天做了下这个专题的第一题,皇后问题在我没有开始接受Axie的算法低强度训练前,就早有耳闻了,但一直不知道是什么类型的题目,今天一看,原 ...
- shell脚本字符串截取的8种方法
假设有变量 var=http://www.aaa.com/123.htm. 1. # 号截取,删除左边字符,保留右边字符. echo ${var#*//} 其中 var 是变量名,# 号是运算符,*/ ...
- CSS之导航菜单
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 如何查看eclipse或Myeclipse的版本号
对于eclipse 方法一: 在eclipse安装路径下用记事本打开 .eclipseproduct文件,里面就有eclipse版本号. 形如: name=Eclipse Platform id=or ...
- UVaLive 3708
题意:周长为10000的圆上等距分布n个雕塑,求再加入m个雕塑后,为使所有雕塑等距分布所需移动原来n个雕塑的最小总距离. 分析:计算相对距离. #include<cstdio> #incl ...
- oracle 之路目录
oracle linux单机安装 oracle windows单机安装创建实例卡死解决办法 oracle rac安装 HPDL380G8平台11.2.0.3 RAC实施手册 pl-sql develo ...
- jsp链接数据库
数据库表代码: /*Navicat MySQL Data Transfer Source Server : localhost_3306Source Server Version : 50528Sou ...