エンディアンを指定できるBitConverter

バイト配列から任意のプリミティブ型(int, floatなど)に変換するにあたって便利なのがSystem.BitConverterクラスです。しかしこのクラスは自分の環境におけるエンディアンで処理されてしまいます。おそらく多くの環境はリトルエンディアンですが、この場合ビッグエンディアンとしての処理はできないということになります。なんでないのかなーとは思いつつ、自作します。

ちなみに、世の中にはこれ以外のエンディアン(PDPとか)も存在しますが、今回は無視します。

続きを読む