【发布时间】:2022-01-01 04:46:55
【问题描述】:
我得到一个包含有符号 int 数据的数组,我需要将数组中的每个值转换为 2 个字节。我正在使用 C#,我尝试使用 BitConverter.GetBytes(int),但它返回一个 4 字节数组。
【问题讨论】:
标签: c#
我得到一个包含有符号 int 数据的数组,我需要将数组中的每个值转换为 2 个字节。我正在使用 C#,我尝试使用 BitConverter.GetBytes(int),但它返回一个 4 字节数组。
【问题讨论】:
标签: c#
带符号的 16 位值最好表示为 short 而不是 int - 所以使用 BitConverter.GetBytes(short)。
但是,作为替代方案:
byte lowByte = (byte) (value & 0xff);
byte highByte = (byte) ((value >> 8) & 0xff);
【讨论】: