如何在pb中实现文件的上传与访问

如何在pb中实现文件的上传与访问,第1张

 1、文件拷贝

函数声明:

FUNCTION boolean CopyFileA(ref string cfrom, ref string cto, boolean flag) LIBRARY "Kernel32.dll"

蚂岁调用:

string ls_source, ls_des

boolean lb_flag, lb_rtn

lb_flag = false

ls_source = "c:\book.xls" //源文件档物猜

ls_des = "C:\tmp\111.xls" //目标文件

lb_rtn = CopyFileA(ls_source, ls_des, lb_flag)

MessageBox("文件拷贝", string(lb_rtn))

2、删除文件

函数声明:

FUNCTION boolean DeleteFileA(ref string filename) LIBRARY "Kernel32.dll"

调用:

string ls_file

boolean lb_rtn

ls_file = "C:\tmp\111.xls"

lb_rtn = DeleteFileA(ls_file)

MessageBox("文件删除行型", string(lb_rtn))

或者用PB本身的函数FileDelete()来删除文件。

-

可以的,先定义一个blob变量,然后用读文件的方式读到变量中,使用updateblob更新,和UPDATE语法差不多,不过不是通过数据窗口实现,而是通过SQL语句实现,selectblob查询,和SELECT查询也碧氏基本相同,不能直接想数据窗口插入那样直接的Update *** 作了。

给您一段实例吧:

//读取保存图片

string ls_pathname, ls_filename

integer li_value,li_FileNum,loops,i

long ll_fileLength,bytes_read,new_pos

blob b, tot_b

li_value = GetFileOpenName("选择照片", &

+ ls_pathname, ls_filename, "Graphic","Graphic Files (*.bmp*.gif*.jpg*.jpeg),*.bmp*.gif*.jpg*.jpeg")

IF li_value = 1 THEN

// 设置鼠标样式为等待

SetPointer(HourGlass!)

// 获取文件长度,每次最大能读取的长度是32765

ll_fileLength= FileLength(ls_filename)

li_FileNum = FileOpen(ls_filename, StreamMode!, Read!, LockRead!)

// 通过长度得到要悔码散循环读取多少次

IF ll_filelength >32765 THEN

IF Mod(ll_filelength, 32765) = 0 THEN

loops =ll_filelength/32765

ELSE

loops = (ll_filelength/32765) + 1

END IF

ELSE

loops = 1

END IF

// 读取文件

new_pos = 1

FOR i = 1 to loops

bytes_read = FileRead(li_FileNum, b)

tot_b = tot_b + b

NEXT

FileClose(li_FileNum)

//更新表

//UPDATEBLOB 表名 SET 图片字段=:tot_b WHERE 条件 USing sqlca

//IF Sqlca.SQLNRows >0 THEN

//COMMIT USING SQLCA

P_1.setpicture(tot_b) //设模陆置界面显示图片

Elseif li_value=-1 then

MessageBox("选择照片","打开文件错误!")

End If

//从表里读取图片

//Blob lb_photo

//SELECTBLOB photo INTO :lb_photo FROM 表 where 条件 Using SQLCA

//P_1.setpicture(lb_photo)


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/12259183.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-22
下一篇2023-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存