16

I need to convert an integer number to the hex value. It will look like this:

0x0201cb77192c851c

When I do

string hex = int.ToString("x")

in C#, it returns

201cb77192c851c

How can I get the required result?

Peter Mortensen
  • 30,738
  • 21
  • 105
  • 131
Alex
  • 608
  • 4
  • 11
  • 25

2 Answers2

29

One way would be to append the number of digits you need, after "x". This will pad the output with leading zeros as necessary.

"0x" + myLong.ToString("x16");

or

string.Format("0x{0:x16}", myLong);

From The Hexadecimal ("X") Format Specifier :

The precision specifier indicates the minimum number of digits desired in the resulting string. If required, the number is padded with zeros to its left to produce the number of digits given by the precision specifier.

Ani
  • 111,048
  • 26
  • 262
  • 307
8
string hex = "0x" + int.ToString("x16")
John Boker
  • 82,559
  • 17
  • 97
  • 130