C#を使用して4バイトのバイナリデータ(ビッグエンディアン)をIEEE浮動小数点値に変換するにはどうすればよいですか?
質問する
996 次
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 に答える