Sample code for 30+ languages & platforms
DataFlex

Append Encoded Binary Data to StringBuilder

Demonstrates how to append encoded binary data to the contenets of a StringBuilder.

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Boolean iSuccess
    Handle hoBd
    Variant vSb
    Handle hoSb
    String sTemp1

    Move False To iSuccess

    Get Create (RefClass(cComChilkatBinData)) To hoBd
    If (Not(IsComObjectCreated(hoBd))) Begin
        Send CreateComObject of hoBd
    End

    Get ComLoadFile Of hoBd "qa_data/jpg/starfish.jpg" To iSuccess
    If (iSuccess = False) Begin
        Showln "Failed to load file."
        Procedure_Return
    End

    // For example, let's say we want construct simple JSON containing the base64 representation of the above JPG file.
    Get Create (RefClass(cComChilkatStringBuilder)) To hoSb
    If (Not(IsComObjectCreated(hoSb))) Begin
        Send CreateComObject of hoSb
    End
    Get ComAppend Of hoSb '{ "jpg": "' To iSuccess
    // GetEncodedSb appends the enocded representation of the binary data to the StringBuiler passed in the 2nd arg.
    Get pvComObject of hoSb to vSb
    Get ComGetEncodedSb Of hoBd "base64" vSb To iSuccess
    Get ComAppend Of hoSb '" }' To iSuccess

    Get ComGetAsString Of hoSb To sTemp1
    Showln sTemp1

    // Output looks like this:
    //  { "jpg": "/9j/4AAQSkZJRgABAg...rcQ+vo//2Q==" }


End_Procedure