1

如何将十六进制/超长数字的重要部分作为字符串?

例如,如果我有 0x00000321321,我想得到“321321”。

如果我尝试类似:

ulong x = 0x0000023632763;
string s = x.toString();

我明白593700707了,所以这不是我想要的。

那可能吗 ?

谢谢!

4

4 回答 4

5

使用标准十六进制格式ToString(string format)的覆盖,以及去掉前导零 "x" TrimStart()

string s = x.ToString("x");

(感谢 Keith N. 指出Trim没有必要。)

于 2013-05-14T19:12:23.590 回答
3

x.toString("x") 怎么样?我没有方便的 C# 来试用它,但它应该以十六进制输出数字。请参阅文档

于 2013-05-14T19:12:11.283 回答
1

很容易...字符串有很多关于如何创建字符串的选项...

x.ToString("X");

它只会转换重要部分。唯一的选择是 x 或 X 控制您是否获得十六进制数字的大写字母。

于 2013-05-14T19:12:44.887 回答
1

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 
于 2013-05-14T19:21:12.487 回答