我想把最大长度为8的布尔数组打包到一个字节中,通过网络发送,然后再解包回布尔数组。我已经尝试了一些方法,但没能成功。
我正在使用Mono。
我创建了一个BitArray,然后尝试将其转换为字节。
我创建了一个BitArray,然后尝试将其转换为字节。
public static byte[] BitArrayToByteArray(BitArray bits)
{
byte[] ret = new byte[Math.Max(1, bits.Length / 8)];
bits.CopyTo(ret, 0);
return ret;
}
但我收到错误提示,只能使用int和long类型。尝试使用int代替byte,但仍然出现同样的问题。如果可能的话,我想避免使用BitArray,而是使用从bool数组到byte的简单转换。