3

我有一个文件。我从偏移量 05 中读取了 3 个字节。那么如何将该字节 [] 转换为 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 回答