如何将十六进制/超长数字的重要部分作为字符串?
例如,如果我有 0x00000321321,我想得到“321321”。
如果我尝试类似:
ulong x = 0x0000023632763;
string s = x.toString();
我明白593700707
了,所以这不是我想要的。
那可能吗 ?
谢谢!
使用标准十六进制格式ToString(string format)
的覆盖,以及去掉前导零: "x"
TrimStart()
string s = x.ToString("x");
(感谢 Keith N. 指出Trim
没有必要。)
x.toString("x") 怎么样?我没有方便的 C# 来试用它,但它应该以十六进制输出数字。请参阅文档。
很容易...字符串有很多关于如何创建字符串的选项...
x.ToString("X");
它只会转换重要部分。唯一的选择是 x 或 X 控制您是否获得十六进制数字的大写字母。
ToString 支持标准的数字格式。这是e MSDN链接
int value;
value = 0x2045e;
Console.WriteLine(value.ToString("x"));
// Displays 2045e
Console.WriteLine(value.ToString("X"));
// Displays 2045E
Console.WriteLine(value.ToString("X8"));
// Displays 0002045E