PB11.5 webservice 写资料
PB11.5 webservice 写文件
//webservice 服务器端,接收并且解析BASE64 生成图片文件,能够存储到指定目录。
问题:不能指定路径,指定后,报打开文件失败!。不指定目录,文件保存在webservice_root\file\session\C\TEST.JPG 下。
要求能够实现在指定目录下生成文件。
网上说是文件权限问题,请高手指教。
ablb_Data = luo_base64.base64decode(ls_base64) //,lch_return)
//写入文件
//ls_json = GetCurrentDirectory()
//return ls_json
li_FileNo = FileOpen("TEST.jpg", StreamMode!, Write!, LockReadWrite!, Append!)
If li_FileNo < 0 Then
ls_json = '{"status": 1 , "msg":"打开文件失败!"}'
Return ls_json
END IF
ll_BlobLen = Len(ablb_Data)
If ll_BlobLen > 32765 Then
If Mod(ll_BlobLen, 32765) = 0 Then
li_Writes = ll_BlobLen / 32765
Else
li_Writes = (ll_BlobLen / 32765) + 1
End if
Else
li_Writes = 1
End if
ll_CurrentPos = 1
For li_Cnt = 1 To li_Writes
lblb_Data = BlobMid(ablb_Data, ll_CurrentPos, 32765)
ll_CurrentPos += 32765
If FileWrite(li_FileNo, lblb_Data) = -1 Then
ls_json = '{"status": 1 , "msg":"写文件失败!"}'
Return ls_json
End if
Next
FileClose(li_FileNo)
------解决方案--------------------
当然是这样呀,你需要先了解一下pb的虚拟文件系统,刚才说的方法只是让你能访问到test.jpg
如果要写到具体目录,需要通过com组件或其它能够实现虚拟文件路径与实际桌面文件路径对应操作的中间程序
我的资源库中应该有个com的例子,你试试
//webservice 服务器端,接收并且解析BASE64 生成图片文件,能够存储到指定目录。
问题:不能指定路径,指定后,报打开文件失败!。不指定目录,文件保存在webservice_root\file\session\C\TEST.JPG 下。
要求能够实现在指定目录下生成文件。
网上说是文件权限问题,请高手指教。
ablb_Data = luo_base64.base64decode(ls_base64) //,lch_return)
//写入文件
//ls_json = GetCurrentDirectory()
//return ls_json
li_FileNo = FileOpen("TEST.jpg", StreamMode!, Write!, LockReadWrite!, Append!)
If li_FileNo < 0 Then
ls_json = '{"status": 1 , "msg":"打开文件失败!"}'
Return ls_json
END IF
ll_BlobLen = Len(ablb_Data)
If ll_BlobLen > 32765 Then
If Mod(ll_BlobLen, 32765) = 0 Then
li_Writes = ll_BlobLen / 32765
Else
li_Writes = (ll_BlobLen / 32765) + 1
End if
Else
li_Writes = 1
End if
ll_CurrentPos = 1
For li_Cnt = 1 To li_Writes
lblb_Data = BlobMid(ablb_Data, ll_CurrentPos, 32765)
ll_CurrentPos += 32765
If FileWrite(li_FileNo, lblb_Data) = -1 Then
ls_json = '{"status": 1 , "msg":"写文件失败!"}'
Return ls_json
End if
Next
FileClose(li_FileNo)
WEBSERVICE
------解决方案--------------------
当然是这样呀,你需要先了解一下pb的虚拟文件系统,刚才说的方法只是让你能访问到test.jpg
如果要写到具体目录,需要通过com组件或其它能够实现虚拟文件路径与实际桌面文件路径对应操作的中间程序
我的资源库中应该有个com的例子,你试试