在.NET中读取4字节IEEE浮点数

Gre*_*reg 2 .net c# floating-point ieee

我正在尝试读取包含以4字节IEEE float编码的数字的二进制文件.我是用.NET做的BinaryReader,但我不确定如何正确读取数据.我当然确定这种ReadSingle()方法不能给我正在寻找的价值.

有谁知道如何在.NET中这样做?

abe*_*nky 5

如果该BitConverter.ToSingle 方法不适合您,您可能需要调查 Array.Reverse以更改字节的顺序.

你真的没有在你的问题中提供任何代码(强烈建议),但我猜它是这样的:

byte[]  myData = new byte[4];
myBinReader.Read(myData, 0, 4); // Get 4-bytes from the stream.

Array.Reverse(myData);  // Deal with Endian issue?
Single myvalue = BitConverter.ToSingle(myData, 4);
Run Code Online (Sandbox Code Playgroud)