我正在使用 C# 并从某个控制器读取字节数组并将它们转换为其类型。除浮点值外,所有值(int、string)都可以。
假设得到的值为 533174.1。
但是当读取数组时
byteArr[0]=2
byteArr[1]=73
byteArr[2]=98
byteArr[3]=43
获得一些乱码值。
我用的是System.BitConverter.ToDouble(bytesArr,0)
和其他方法都没有成功。
请帮忙。
谢谢,
伊加尔.
您的字节将进行字交换。此函数应该将您的字节数组正确转换为浮点数:
static float ToFloat(byte[] input)
{
byte[] newArray = new[] { input[2], input[3], input[0], input[1] };
return BitConverter.ToSingle(newArray, 0);
}
ToFloat(new byte[]{2,73,98,43}) == 533174.1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)