2011-01-14 28 views
78

Necesito convertir e int a cadena hexadecimal.int a cadena hexadecimal

al convertir 1400 => 578 utilizando ToString("X") o ToString("X2") pero lo necesito como 0578.

¿Alguien puede proporcionarme el IFormatter para garantizar que la cuerda tenga 4 caracteres de largo?

+1

Mira Numerics formatos [aquí] (http://msdn.microsoft.com/en-us/library/dwhawy9k (VS.71) .aspx). – Ariel

Respuesta

125

Use ToString("X4").

El 4 significa que la cadena tendrá 4 dígitos de longitud.

Referencia: The Hexadecimal ("X") Format Specifier on MSDN.

+1

No es bueno para números negativos, use un tipo 'corto' en lugar de 'int' –

+1

Para imprimir un int32 solo debe usar "X8", no "X4". Si quieres X4, deberías asegurarte de usar un Int16. – Nyerguds

2

La respuesta anterior no es buena para los números negativos. Use un tipo corto en lugar de int

 short iValue = -1400; 
     string sResult = iValue.ToString("X2"); 
     Console.WriteLine("Value={0} Result={1}", iValue, sResult); 

Ahora resultado es Fa88

Cuestiones relacionadas