byte[4]转化为float

wgggkgd 2011-10-18 06:42:28
byte[4]转化为 float,求解
...全文
134 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
sdl2005lyx 2011-10-19
  • 打赏
  • 举报
回复
BitConverter.ToSingle 方法 :返回由字节数组中指定位置的四个字节转换来的单精度浮点数。

MSDN上面有例子!
classbob 2011-10-18
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wanglei_wan 的回复:]

C# code
public static float ToFloat(byte[] data)
{
float a = 0;
byte i;
byte[] x = data;
unsafe
{
void* pf;……
[/Quote]
用的着这样么。。。反序的话调用下Array.Reverse不就可以了。。。
足球中国 2011-10-18
  • 打赏
  • 举报
回复
byte[4]是指byte[]里面的第五个值???
wanglei_wan 2011-10-18
  • 打赏
  • 举报
回复
       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也是一种方法,只不过顺序不能变而已。
人工智能算法 2011-10-18
  • 打赏
  • 举报
回复

BitConverter.ToSingle(byte[] value, int startIndex);
Icedmilk 2011-10-18
  • 打赏
  • 举报
回复
这个。。。

你的byte[4]从哪里来的?

还要考虑字节顺序呢
classbob 2011-10-18
  • 打赏
  • 举报
回复

BitConverter.ToSingle(bytes, 0);

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧