Java byte []浮点值转换

时间:2014-09-26 03:43:00

标签: java

我有一个长度为4的字节数组

byte[] h = new byte[4];
h[0] = 0x13;
h[1]=(byte)0xBF;
h[2]=(byte)0x71;
h[3]=(byte)0xA8;

这是一个纬度值(实际值是33.1313576) 我将其转换为浮动,并附上以下声明:

ByteBuffer.wrap(h).getFloat()

输出为4.8327252E-27

1 个答案:

答案 0 :(得分:2)

你错了。根据Java和this online calculator,33.1313576f作为float的字节表示为0x42048683。

你实际拥有的不是浮点数,它是一个整数,需要按1/1000000或其他任何比例缩放。