PowerBuilder
PowerBuilder
Demonstrate Binary Data Encoding Methods
Demonstrates binary data encoding methods.Note: This example requires Chilkat v9.5.0.64 or later.
Chilkat PowerBuilder Downloads
integer li_rc
oleobject loo_BinData
integer li_Offset
integer li_NumBytes
oleobject loo_Sb
loo_BinData = create oleobject
li_rc = loo_BinData.ConnectToNewObject("Chilkat.BinData")
if li_rc < 0 then
destroy loo_BinData
MessageBox("Error","Connecting to COM object failed")
return
end if
// Append 10 bytes: 00, 01, 02, 03, 04, 05, 06, 07, 08, 09
loo_BinData.AppendEncoded("00010203040506070809","hex")
// Show that binData contains 10 bytes.
Write-Debug "num bytes = " + string(loo_BinData.NumBytes)
// Get as base64
Write-Debug "base64: " + loo_BinData.GetEncoded("base64")
// Get a chunk of the binary data.
// The 1st byte is at index 0.
// The output should be "02030405"
li_Offset = 2
li_NumBytes = 4
Write-Debug "chunk: " + loo_BinData.GetEncodedChunk(li_Offset,li_NumBytes,"hex")
// Copy the bytes to a StringBuilder using the base64url encoding
loo_Sb = create oleobject
li_rc = loo_Sb.ConnectToNewObject("Chilkat.StringBuilder")
loo_BinData.GetEncodedSb("base64url",loo_Sb)
Write-Debug "base64url: " + loo_Sb.GetAsString()
// Remove a chunk from the binary data
li_Offset = 2
li_NumBytes = 4
loo_BinData.RemoveChunk(li_Offset,li_NumBytes)
// The bytes remaining are 00,01,06,07,08,and 09
Write-Debug "after removing chunk: " + loo_BinData.GetEncoded("hex")
destroy loo_BinData
destroy loo_Sb