C# byte和10进制、16进制相互转换
var array = new byte[4]; var i = Encoding.UTF8.GetBytes(100.ToString("x2"));//整数转成16byte(utf8) 54 52 Array.Copy(i, array, i.Length); ushort leng = 1400;//无符号整数,00000101 10111000 byte[] a = new byte[2]; a[0] = (byte)(leng >> 8);//leng >> 8表示将leng右移8位,即将高8位移到低8位 00000000 00000101 然后1个byte存储00000101 十进制数值为5 a[1] = (byte)leng;//leng的低8位直接使用(byte)进行强制类型转换,1个byte存储10111000 十进制数值为120 var ccc = BitConverter.ToString(a).Replace("-", "");//byte数组转16进制字符串 0578 var dddd = Convert.ToInt32(ccc, 16); //16进制转32位十进制 Array.Copy(a, 0, array, 2, a.Length);//array的值54 52 5 120