如何在C#控制台中将16位二进制字符串拆分为两个8位二进制字符串
拆分16位二进制帧为两个8位帧的解决方案
没问题,你已经完成了最关键的拼接步骤,拆分其实非常容易!只需要利用C#字符串的Substring方法就能轻松实现。
具体实现思路
你的16位二进制字符串res长度固定为16,所以:
- 第一个8位帧:从字符串的起始索引0开始,截取8个字符
- 第二个8位帧:从字符串的索引8开始,截取剩下的8个字符
修改后的完整代码
int num1, num2; Console.WriteLine("Enter 1st number:"); num1 = Int32.Parse(Console.ReadLine()); Console.WriteLine("Enter 2nd number:"); num2 = Int32.Parse(Console.ReadLine()); string bin1 = Convert.ToString(num1, 2).PadLeft(6, '0'); Console.WriteLine(bin1); string bin2 = Convert.ToString(num2, 2).PadLeft(6, '0'); Console.WriteLine(bin2); string bin3 = "0110"; string res = string.Concat(bin3, bin1, bin2); Console.WriteLine("16位完整帧: " + res); // 拆分两个8位帧 string first8BitFrame = res.Substring(0, 8); string second8BitFrame = res.Substring(8, 8); Console.WriteLine("第一个8位帧: " + first8BitFrame); Console.WriteLine("第二个8位帧: " + second8BitFrame); Console.ReadKey();
效果说明
假设你输入的两个数字拼接后得到的16位帧是0110000001000010,运行代码后会输出:
第一个8位帧: 01100000 第二个8位帧: 01000010
这样就完美把16位帧拆分成两个独立的8位帧啦!
内容的提问来源于stack exchange,提问作者Yash
相关产品推荐
相关产品推荐

