我试过了
string inpStr = "800000000000000026FFF40000000000";
long num = long.Parse(inpStr, NumberStyles.HexNumber);
并收到错误“对于Int64,值太大或太小”。如果我使用16位十六进制,则可以正常工作。如何使其与32位十六进制值一起使用?
最佳答案
32位十六进制数字不适合long
(它是64位,因此最多可以容纳16位十六进制值)
在.NET 4.0中,您可以使用BigInteger:
const string inpStr = "800000000000000026FFF40000000000";
BigInteger num =
BigInteger.Parse(inpStr, System.Globalization.NumberStyles.HexNumber);