float to byte[]
Reverse a byte[]
in Java:
public static byte[] reverse(byte[] arr)
{
byte[] buf = new byte[arr.length];
int len = arr.length;
for (int i = 0; i < len; i++) {
buf[i] = arr[len - 1 - i];
}
return buf;
}
Java float -> byte[]
:
public static byte[] floatToByteArray(float value)
{
int intBits = Float.floatToIntBits(value);
return new byte[] {
(byte) (intBits >> 24),
(byte) (intBits >> 16),
(byte) (intBits >> 8),
(byte) (intBits)
};
}
A more elegant way one-liner to do float -> byte[]
:
ByteBuffer.allocate(4).putFloat(value).array();
Java byte[] -> float
byte b[] = new byte[4];
ByteBuffer buffer = ByteBuffer.wrap(b);
float fval = buffer.getFloat();
Last updated
Was this helpful?