J'ai un tableau de 4 octets qui représente une valeur flottante. Les octets sont lus à partir du réseau, par exemple, 3e 3f e3 a0. Comment puis-je le convertir d'octet [] en float en java?
In Java a char
est 16 bits. Si vous voulez dire que vous avez 4 byte
valeurs dans un petit ordre d'octets endian que vous devez convertir en float
vous pouvez utiliser ByteBuffer
.
byte[] bytes = { }
float f = ByteBuffer.wrap(bytes).order(ByteOrder.LITTLE_ENDIAN).getFloat();
Essaye ça:
float foo = Float.intBitsToFloat( buffer[n] ^ buffer[n+1]<<8 ^ buffer[n+2]<<16 ^ buffer[n+3]<<24 );