110,538
社区成员
发帖
与我相关
我的任务
分享
public static float ToFloat(byte[] data)
{
float a = 0;
byte i;
byte[] x = data;
unsafe
{
void* pf;
fixed (byte* px = x)
{
pf = &a;
for (i = 0; i < data.Length; i++)
{
*((byte*)pf + i) = *(px + i);
}
}
}
return a;
}
当然,结果和你byte[]的顺序是有关系的,如果和这个反序,只需要改for循环里面的赋值顺序就行了,BitConverter.ToSingle也是一种方法,只不过顺序不能变而已。
BitConverter.ToSingle(byte[] value, int startIndex);
BitConverter.ToSingle(bytes, 0);