https://docs.liferay.com/portal/6.2/javadocs/src-html/com/liferay/portal/kernel/io/BigEndianCodec.html
084 public static void putLong(byte[] bytes, int index, long l) { 085 bytes[index] = (byte)(l >>> 56); 086 bytes[index + 1] = (byte)(l >>> 48); 087 bytes[index + 2] = (byte)(l >>> 40); 088 bytes[index + 3] = (byte)(l >>> 32); 089 bytes[index + 4] = (byte)(l >>> 24); 090 bytes[index + 5] = (byte)(l >>> 16); 091 bytes[index + 6] = (byte)(l >>> 8); 092 bytes[index + 7] = (byte)l; 093 }
with c/c++
VOID BigEndianCodePutLong(uint8_t * bytes, int index, uint64_t l) { // Write big-endian int value into buffer; bytes[0] = (uint8_t)(l >> 56); bytes[1] = (uint8_t)(l >> 48); bytes[2] = (uint8_t)(l >> 40); bytes[3] = (uint8_t)(l >> 32); bytes[4] = (uint8_t)(l >> 24); bytes[5] = (uint8_t)(l >> 16); bytes[6] = (uint8_t)(l >> 8); bytes[7] = (uint8_t)l; return; }