如何在java中将4字节数组转换为浮点型

2022-09-01 04:52:37

我有一个4字节数组,表示浮点值。从网络读取字节,例如,3e 3f e3 a0。如何在java中将其从byte[]转换为float?


答案 1

在Java中,a是16位。如果你的意思是你有一个小字节序字节序的4个值,你需要将其转换为可以使用。charbytefloatByteBuffer

byte[] bytes = { }
float f = ByteBuffer.wrap(bytes).order(ByteOrder.LITTLE_ENDIAN).getFloat();

答案 2

试试这个:

float foo = Float.intBitsToFloat( buffer[n] ^ buffer[n+1]<<8 ^ buffer[n+2]<<16 ^ buffer[n+3]<<24 );