PB Blob轉成文件


/*uf_create_pic
value string as_file_path 文件名  C:/test.txt
value blob ablb_data blob
return integer*/
integer li_FileNo, li_Writes, li_Cnt

long ll_BlobLen, ll_CurrentPos


blob lblb_Data

li_FileNo = FileOpen(as_file_path, StreamMode!, &
   Write!, LockReadWrite!, Append!)

If li_FileNo < 0 Then Return -1

 
ll_BlobLen = Len(ablb_Data)


// Determine the number of writes required 

// to write the entire blob

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

      Return -1

   End if
Next

FileClose(li_FileNo)

Return 1

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM