ByteBuffer is concerned with with "Endian-ness" in that it's a mechanism for stuffing non-byte objects into a linear sequence (vector) of bytes. It's the non-byte objects that produce the grief, since "word size" varies from 2 bytes to 8, with occasional forays into even more bizarre values depending on the machine and OS in question and endian-ness is likewise variable.
Actual transmission of the data would be from "left to right", or, if you prefer, in ascending index order. Lay out your data in a byte array or ByteBuffer and transmit it either as a
unit or by stepping through the individual bytes and outputting them and either way, you'll not get any rude surprises from the transmission hardware (I leave the actual buffer layout surprises as an exercise
).
Don't forget - internally, Java characters are Unicode, and thus
2 bytes long!
The secret of how to be miserable is to constantly expect things are going to happen the way that they are "supposed" to happen.
You can have faith, which carries the understanding that you may be disappointed. Then there's being a willfully-blind idiot, which virtually guarantees it.