从oracle中读取图片,Pb从oracle中读取和保存图片

//保存图片

//选择文件

string pname, fname

integer value

value = GetFileOpenName("请选择部件图",pname, fname,'jpg',

&

+ 'Jpg

文件(*.jpg),*.jpg,位图文件(*.bmp),*.bmp,所有文件(*.*),*.*')

IF value <> 1 THEN return

//显示文件

p_1.PictureName = fname

SetPointer( HOURGLASS! )

SQLCA.AutoCommit = True

//测定文件长度

long ll_len

ll_len = FileLength(pname)

//打开文件

integer fileno

fileno = FileOpen(pname,StreamMode!,READ!,LOCKREAD!)

//读文件

blob lb_file ,lb_fn

int li_ii,ii

li_ii = ceiling(ll_len/32765)//取整

for ii = 1 to li_ii

FileRead (fileno, lb_fn)

lb_file = lb_file + lb_fn

next

//读图片,并另存为文件

blob lb_pict

selectblob col into :lb_pict from pidtest where id = 1;

//显示图片

p_1.setpicture(lb_pict)

//另存为文件

int li_no

String ls_filepath,ls_filename

getfilesavename('Save

as',ls_filepath,ls_filename,'jpg','jpg文件(*.jpg),*.jpg,位图文件(*.bmp),*.bmp,所有文件(*.*),*.*')

li_no = fileopen(ls_filepath, streammode!, write!)

long ll_len

ll_len = len(lb_pict)

int li_ii,ii

li_ii = ceiling(ll_len/32765)//取整

for ii = 1 to li_ii

filewrite(li_no, lb_pict)

lb_pict = blobmid(lb_pict, 32765 * ii)

next

fileclose(li_no)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值