I have an array of bytes that I read from a header section of a message. These bytes contain the length of the message. There never are more than 3 bytes and they are ordered from LSB to MSB. So in the example below, 39 is the LSB and 2 is the MSB.
var data = new byte[] { 39, 213, 2 };
In the example above how can I take those bytes and convert to a number (int,short,etc)?
var num = data[0] + (data[1] << 8) + (data[2] << 16);
Use methods like BitConverter.ToInt32, but realize that you'll need 4 bytes for 32 bit quantities.
var data = new byte[] {39, 213, 2, 0};
int integer = BitConverter.ToInt32(data, 0);
There are also other methods to convert to and from other types like Single and Double.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With