Sample code for 30+ languages & platforms
Dart

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 Dart Downloads

Dart
import 'package:chilkat/chilkat.dart';

void main() {
  final bd = CkBinData();

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

  // Appending little-endian causes bytes to be
  // appended in the order 0x15, 0xCD, 0x5B, 0x07
  var littleEndian = true;
  bd.appendInt4(x, littleEndian);

  print(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 = false;
  bd.appendInt4(x, littleEndian);

  print(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 = true;
  bd.appendInt2(x, littleEndian);

  print(bd.getEncoded('hex'));
  // Output is: D204

  littleEndian = false;
  bd.appendInt2(x, littleEndian);

  print(bd.getEncoded('hex'));
  // Output is now: D20404D2
}