BLOB 保存问题

neu_zhou 2003-12-31 03:54:05
我用BLOB保存WORD 文档,文档内容少于32K 时正常,大于32K 时就成了乱码,求各位看看:)
blob lb_blob

lb_blob=of_filetoblob("c:\temp.doc")

UPDATEBLOB nrs_workplan set plan_cont =:lb_blob
WHERE dept_code='0001';


of_filetoblob 内容如下:

integer li_filenum,li_loops,li_counter
long ll_filelen, ll_bytes_read, ll_new_pos
blob lb_our_blob, lb_tot_b

ll_filelen = FileLength(as_filename)
// 获 取 文 件 的 大 小
li_filenum = FileOpen(as_filename,StreamMode!, Read!, LockRead!)

// Determine how many times to call FileRead
IF ll_filelen > 32765 THEN
IF Mod(ll_filelen, 32765) = 0 THEN
li_loops = ll_filelen/32765
ELSE
li_loops = (ll_filelen/32765) + 1
END IF
ELSE
li_loops = 1
END IF


// 读 文 件...
FOR li_counter = 1 to li_loops
ll_bytes_read = FileRead(li_filenum,lb_our_blob )
lb_tot_b = lb_tot_b + lb_our_blob
NEXT
FileClose(li_filenum)

return lb_tot_b
...全文
77 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
neu_zhou 2004-01-04
  • 打赏
  • 举报
回复
解决了,读出数据保存文件的时候弄错了,写成了32766:(
sinkiangscorpio 2003-12-31
  • 打赏
  • 举报
回复
我发现楼主一个好习惯,那就是严格遵守代码规范。
这个函数没有问题,问题可能出现保存或者读取的时候。
neu_zhou 2003-12-31
  • 打赏
  • 举报
回复
我知道每次最大32K,不然也用不着写循环语句
mittee 2003-12-31
  • 打赏
  • 举报
回复
FileRead(li_filenum,lb_our_blob )
每次最大32k

1,077

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧