如何在java中将4字节数组转换为float
我有一个4字节的数组,表示一个浮点值。 从网络读取字节,例如3e 3f e3 a0。 如何将它从byte []转换为java中的float?
在Java中, char
是16位的。 如果你的意思是你有一个4 byte
值的小端字节顺序,你需要转换为float
你可以使用ByteBuffer
。
byte[] bytes = { } float f = ByteBuffer.wrap(bytes).order(ByteOrder.LITTLE_ENDIAN).getFloat();
尝试这个:
float foo = Float.intBitsToFloat( buffer[n] ^ buffer[n+1]<<8 ^ buffer[n+2]<<16 ^ buffer[n+3]<<24 );