对方是协议

对于整型、长整型等数据类型,Big endian 认为第一个字节是最高位字节(按照从低地址到高地址的顺序存放数据的高位字节到低位字节);而 Little endian 则相反,它认为第一个字节是最低位字节(按照从低地址到高地址的顺序存放据的低位字节到高位字节)。

直接使用bitconvert.toint,则正好相反

通过BitConverter.IsLittleEndian获取可以知道,默认是LittleEndian

 

/// <summary>
/// 8字节byte 转int8
/// </summary>
/// <param name="data"></param>
/// <returns></returns>
public static ushort ByteToInt8(this byte[] data)
{
if (BitConverter.IsLittleEndian)
Array.Reverse(data);
ushort ilen = BitConverter.ToUInt16(data, 0);
return ilen;
}

 

相关文章:

  • 2021-11-04
  • 2022-02-26
  • 2021-12-19
  • 2022-02-05
  • 2022-12-23
  • 2022-12-23
  • 2021-08-15
  • 2022-02-07
猜你喜欢
  • 2021-08-02
  • 2022-12-23
  • 2021-12-07
  • 2022-12-23
  • 2022-02-24
  • 2021-11-28
  • 2022-12-23
相关资源
相似解决方案