1418438486按进制转换成16进制是{0x54, 0x8B,0xA7,0x56}
1453820756按进制转换成16进制是{0x56,0xA7, 0x8B,0x54}
进制转换16进制的高位对应十进制的高位,低位对应的是十进制的低位,而程序转换的时候正好相反。要想一样就在转换前对相应的顺序进行调整即可。

解决方案 »

  1.   

    byte[] b = {0x54, 0x8B,0xA7,0x56};
    b = b.Reverse().ToArray();
    然后接上你的代码
      

  2.   

    确实如楼上所说,高位、低位这里还未理解透,然后通过程序验证,结果一致了。还有一个方法,转成字符串,再16进制转10进制,感觉有点笨string StringOut = "";
                foreach (byte InByte in temp)
                {
                    StringOut +=String.Format("{0:X2} ", InByte);
                }
                StringOut=StringOut.Replace(" ","");
                long strutc = Convert.ToInt32(StringOut, 16);