Sample code for 30+ languages & platforms
Objective-C

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 Objective-C Downloads

Objective-C
#import <CkoBinData.h>

BOOL success = NO;

CkoBinData *bd = [[CkoBinData alloc] init];

//  The hex value of decimal 123456789 is 0x075BCD15
int x = 123456789;

//  Appending little-endian causes bytes to be
//  appended in the order 0x15, 0xCD, 0x5B, 0x07
BOOL littleEndian = YES;
success = [bd AppendInt4: [NSNumber numberWithInt: x] littleEndian: littleEndian];

NSLog(@"%@",[bd GetEncoded: @"hex"]);
//  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
littleEndian = NO;
[bd AppendInt4: [NSNumber numberWithInt: x] littleEndian: littleEndian];

NSLog(@"%@",[bd GetEncoded: @"hex"]);
//  bd now contains: 15CD5B07075BCD15

//  -------------------------------------------
//  Now do the same thing with 16-bit integers
[bd Clear];

//  1234 decimal = 0x04D2 hex.
x = 1234;

littleEndian = YES;
[bd AppendInt2: [NSNumber numberWithInt: x] littleEndian: littleEndian];

NSLog(@"%@",[bd GetEncoded: @"hex"]);
//  Output is: D204

littleEndian = NO;
[bd AppendInt2: [NSNumber numberWithInt: x] littleEndian: littleEndian];

NSLog(@"%@",[bd GetEncoded: @"hex"]);
//  Output is now: D20404D2