2

我正在尝试读取包含以 4 字节 IEEE 浮点数编码的数字的二进制文件。我正在使用 .NET 执行此操作BinaryReader,但不确定如何正确读取数据。我确信该ReadSingle()方法没有给我我正在寻找的价值。

有谁知道如何在.NET 中做到这一点?

4

3 回答 3

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);
于 2013-08-02T15:50:33.233 回答
3

使用BitConverter.ToSingle方法

于 2013-08-02T15:35:05.317 回答
0

遍历您的输入(或读取您的流)并使用 BitConverter

float value = BitConverter.ToSingle( bytes, index );
于 2013-08-02T15:36:12.497 回答