いくつかのものをC#からJavaに移植していますが、.NETのBitConverterと同じように、バイトをプリミティブに変換できるクラスが必要です。
ここに投稿したばかりですが、私のコンピューターはリトルエンディアン(Intel)を使用しており、BitConverterは期待どおりに機能します。
// C# code
byte[] b2 = new byte[] { 0, 1 };
short b2short = BitConverter.ToInt16(b2, 0);
予想通りb2short == 256。
さて、私はJAVAに「BitConverter」が必要で、このコードを見つけました。ただし、JAVAで試してみると、メソッドはバイト配列をビッグエンディアンとして解釈しているように見えます。JAVAコード:
// JAVA code
byte[] b2 = new byte[] { 0, 1 };
short b2short = MyFoundConverter.BitConverter.toShort(b2, 0);
この場合、b2short == 1であり、これはビッグエンディアンのように思えます。
このWebページにあるコードは、バイト配列をビッグエンディアンとして解釈していますか?
もしそうなら、それをリトルエンディアンにする簡単な方法はありますか?