1

C#を使用して4バイトのバイナリデータ(ビッグエンディアン)をIEEE浮動小数点値に変換するにはどうすればよいですか?

4

1 に答える 1

1

簡単な解決策は、着信配列を逆にして、それを.NetFrameworkに渡すことですBitConverter

byte[] reversed = data.Reverse().ToArray();
float value = BitConverter.ToSingle(reversed, 0);

ビッグエンディアンの値で動作する本格的なビットコンバーターについてMiscUtil.Conversion.BigEndianBitConverterは、 JonSkeetとMarcGravellによるMiscUtilライブラリを参照してから、次を使用してToSingle(byte[] value, int startIndex)ください。

byte[] data;
float value = BigEndianBitConverter.ToSingle(data, 0);

サポートされているメソッドは、.NetFrameworkのBitConverterクラスのメソッドと同じです。ソースはMiscUtilのWebサイトにあります。

于 2012-07-29T19:33:45.317 に答える