数字大于 int
& long
但可以容纳在 Decimal
中。但是普通的 ToString
或 Convert
方法不适用于 Decimal
。
最佳答案
我相信这会在返回任何内容时产生正确的结果,但可能会拒绝有效的整数。我敢说这可以通过一些努力来解决......(哦,目前它也会因负数而失败。)
static string ConvertToHex(decimal d)
{
int[] bits = decimal.GetBits(d);
if (bits[3] != 0) // Sign and exponent
{
throw new ArgumentException();
}
return string.Format("{0:x8}{1:x8}{2:x8}",
(uint)bits[2], (uint)bits[1], (uint)bits[0]);
}
关于c# - 如何在 C# 中将大十进制数转换为十六进制数(例如 : 588063595292424954445828),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/221154/