让我们假设我有一个十六进制字符串
00 00 04 01 11 00 08 00 06 C2 C1 BC
有了这个,我需要生成第7个,第8个和第9个八位字节.十六进制是
00 06 C2
这个数字原来是1730.通过以下内容,我该如何简化?
byte b1 = 0x00;
byte b2 = 0x06;
byte b3 = 0xC2;
Console.WriteLine(Convert.ToInt32((Convert.ToString(b1, 16)) + (Convert.ToString(b2, 16)) + (Convert.ToString(b3, 16)), 16));
Run Code Online (Sandbox Code Playgroud)
我知道必须有一个更简单的方法.我试过Console.WriteLine((b1 + b2 + b3).ToString());但它不起作用.
尝试:
int result = b3 | (b2 << 8) | (b1 << 16);
Run Code Online (Sandbox Code Playgroud)
假设b1,b2和b3是byte您需要转换的值.
的<<操作者移动其操作数由比特指定数目左.