3

ファイルがあります。オフセット 05 から 3 バイトを読み取りました。では、その byte[] を int24 に変換するにはどうすればよいでしょうか。または、その配列を int32 に変換してから、その int32 を int24 に変換すると機能しますか? そして、どのように変換するのですか?

4

1 に答える 1

2

Int24 は直接サポートされていませんが、必要なものを達成する方法を説明する同様の質問があります。

public struct UInt24 {
   private Byte _b0;
   private Byte _b1;
   private Byte _b2;

   public UInt24(UInt32 value) {
       _b0 = (byte)(value & 0xFF);
       _b1 = (byte)(value >> 8); 
       _b2 = (byte)(value >> 16);
   }

   public unsafe Byte* Byte0 { get { return &_b0; } }
   public UInt32 Value { get { return _b0 | ( _b1 << 8 ) | ( _b2 << 16 ); } }

}

UInt24 uint24 = new UInt24( 123 );

C# に Int24 の実装はありますか?

于 2012-12-30T00:52:06.550 に答える