DataFlex
DataFlex
Append Big-Endian or Little-Endian Integers
Demonstrates how to append integers in big-endian or little-endian byte order to a BinData.Note: This example requires Chilkat v9.5.0.77 or greater.
Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoBd
Integer x
Boolean iLittleEndian
String sTemp1
Move False To iSuccess
Get Create (RefClass(cComChilkatBinData)) To hoBd
If (Not(IsComObjectCreated(hoBd))) Begin
Send CreateComObject of hoBd
End
// The hex value of decimal 123456789 is 0x075BCD15
Move 123456789 To x
// Appending little-endian causes bytes to be
// appended in the order 0x15, 0xCD, 0x5B, 0x07
Move True To iLittleEndian
Get ComAppendInt4 Of hoBd x iLittleEndian To iSuccess
Get ComGetEncoded Of hoBd "hex" To sTemp1
Showln sTemp1
// Output is: 15CD5B07
// Now append the same integer in big-endian byte order.
// Appending bit-endian causes bytes to be
// appended in the order 0x07, 0x5B, 0xCD, 0x15
Move False To iLittleEndian
Get ComAppendInt4 Of hoBd x iLittleEndian To iSuccess
Get ComGetEncoded Of hoBd "hex" To sTemp1
Showln sTemp1
// bd now contains: 15CD5B07075BCD15
// -------------------------------------------
// Now do the same thing with 16-bit integers
Get ComClear Of hoBd To iSuccess
// 1234 decimal = 0x04D2 hex.
Move 1234 To x
Move True To iLittleEndian
Get ComAppendInt2 Of hoBd x iLittleEndian To iSuccess
Get ComGetEncoded Of hoBd "hex" To sTemp1
Showln sTemp1
// Output is: D204
Move False To iLittleEndian
Get ComAppendInt2 Of hoBd x iLittleEndian To iSuccess
Get ComGetEncoded Of hoBd "hex" To sTemp1
Showln sTemp1
// Output is now: D20404D2
End_Procedure