DataFlex
DataFlex
Decode from Binary Encoding and Append String
Demonstrates how to decode from a binary encoding (base64, hex, url, etc.) and then append the decoded string to a Chilkat StringBuilder object.Note: This example uses the new DecodeAndAppend method added in Chilkat v9.5.0.87.
Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
String sNameWindows1252UrlEncoded
String sNameUtf8UrlEncoded
Handle hoSb1
Variant vSb2
Handle hoSb2
Boolean iBEqual
String sTemp1
Move False To iSuccess
// We have the string "MÆRSK" in two forms:
// This is the URL encoding of the windows-1252 representation.
Move "M%C6RSK" To sNameWindows1252UrlEncoded
// This is the URL encoding of the utf-8 representation.
Move "M%C3%86RSK" To sNameUtf8UrlEncoded
// Note that the result of loading a string into a string object
// is the same if we correctly specify the underlying charset encoding.
// In the above example, we have the same string, but in different charset encodings
// subsequently URL encoded.
Get Create (RefClass(cComChilkatStringBuilder)) To hoSb1
If (Not(IsComObjectCreated(hoSb1))) Begin
Send CreateComObject of hoSb1
End
Get ComDecodeAndAppend Of hoSb1 sNameWindows1252UrlEncoded "url" "windows-1252" To iSuccess
Get Create (RefClass(cComChilkatStringBuilder)) To hoSb2
If (Not(IsComObjectCreated(hoSb2))) Begin
Send CreateComObject of hoSb2
End
Get ComDecodeAndAppend Of hoSb2 sNameUtf8UrlEncoded "url" "utf-8" To iSuccess
// sb1 and sb2 both hold the same string.
Get pvComObject of hoSb2 to vSb2
Get ComContentsEqualSb Of hoSb1 vSb2 True To iBEqual
Showln "bEqual = " iBEqual
// We can see the string is "MÆRSK" in both cases.
Get ComGetAsString Of hoSb1 To sTemp1
Showln sTemp1
Get ComGetAsString Of hoSb2 To sTemp1
Showln sTemp1
End_Procedure