繁体   English   中英

如何拆分字节数组并分配给字节变量?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM