如何将十六进制/多数字的重要部分作为字符串?
例如,如果我有0x00000321321,我想获得“321321”。
如果我尝试这样的话:
ulong x = 0x0000023632763;
string s = x.toString();
我得到593700707
,所以这不是我想要的。
这可能吗?
谢谢!
答案 0 :(得分:5)
将ToString(string format)
覆盖与standard hexadecimal formatting "x"
以及:TrimStart()
一起使用,以摆脱前导零
string s = x.ToString("x");
(感谢Keith N.指出Trim
没有必要。)
答案 1 :(得分:3)
x.toString(" x")怎么样?我没有C#方便尝试,但是应该以十六进制输出数字。请参阅docs。
答案 2 :(得分:1)
非常简单...字符串有很多关于如何创建字符串的选项......
x.ToString("X");
它只会转换重要部分。只有选择是x或X控制是否为十六进制数字获得大写字母。
答案 3 :(得分:1)
ToString支持标准数字格式。这是e MSDN link
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