2010-10-29 4 views
12

Ho bisogno di convertire un numero intero nel valore esadecimale. Si sarà simile a questa:Convertire un numero nel valore esadecimale in .NET

0x0201cb77192c851c

Quando faccio

string hex = int.ToString("x") 

in C#, restituisce

201cb77192c851c 

Come posso ottenere il risultato richiesto?

risposta

23

Un modo sarebbe quello di aggiungere il numero di cifre necessarie dopo "x". Questo riempirà l'output con zeri iniziali, se necessario.

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

o

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

Da The Hexadecimal ("X") Format Specifier :

L'identificatore di precisione indica il numero minimo di cifre desiderati stringa risultante. Se necessario, il numero viene riempito con zeri sul numero a sinistra per produrre il numero di cifre fornito dallo specificatore di precisione.

+0

bene, la risposta funziona, se il vostro sarà Upvote si upvote mia lol –

+0

upvoted, funziona. –

+0

@John Boker: Grazie, ma il tuo ha bisogno dello specificatore di precisione. – Ani

6
string hex = "0x" + int.ToString("x16")