[英]How to split byte array and assign to a byte variable?
在我的C#应用程序中,我有一个字节数组,如下所示。
byte[] byteArray = {0x2, 0x2, 0x6, 0x6};
我需要拆分前两个元素,即0x2和0x2并将其分配给一个字节变量。 同样,应该将最后两个元素分配给另一个字节变量。
即
byte FirstByte = 0x22;
byte SecondByte = 0x66;
我可以将数组拆分为子数组,但是找不到将byteArray转换为单个字节的方法。
您可以将它们按位进行“或”运算,使用<<
移入一个半字节:
byte firstByte = (byte)(byteArray[0] | byteArray[1] << 4);
byte secondByte = (byte)(byteArray[2] | byteArray[3] << 4);
您没有指定组合半字节的顺序,因此您可能需要这样做:
byte firstByte = (byte)(byteArray[1] | byteArray[0] << 4);
byte secondByte = (byte)(byteArray[3] | byteArray[2] << 4);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.