2010-06-26 18 views
103

¿Cómo agrego relleno "0" a una cadena para que mi longitud de cadena sea siempre 4?Añadir relleno cero a una cadena

Ejemplo

If input "1", 3 padding is added = 0001 
If input "25", 2 padding is added = 0025 
If input "301", 1 padding is added = 0301 
If input "4501", 0 padding is added = 4501 

Respuesta

192

Puede utilizar PadLeft

var newString = Your_String.PadLeft(4, '0'); 
+12

Tenga en cuenta que ' "12345" .PadLeft (4, '0')' es _still_ "12345" - no lo truncará. Esto no le resta valor a esta respuesta, ya que cumple con todas las especificaciones (hay algo extrañamente satisfactorio en tener una respuesta que eligió como la aceptada (aunque no tan satisfactoria como tener una propia aceptada, por supuesto), ordenar de como si tu hijo estuviera ingresando en la mejor escuela), solo pensé en mencionarlo en caso de que le mostrara su fea cabeza en algún momento en el futuro. Cripes, espero que esos paréntesis estén equilibrados :-) – paxdiablo

+14

@paxdiablo: Estuvieron hasta el emoticón. –

+0

'" 1.2 ".PadRight (4, '0')' también funciona para cero llenando un número de cadena como "1.20". Puedo hacer esto para truncar y completar un simple número de cadena <10000. 'num = num.length> 4? num.Substring (0,4): num.PadRight (4, '0'); ' –

7
"1".PadLeft(4, '0'); 
44
myInt.ToString("D4"); 
+9

La pregunta es cómo agregar relleno" a una cadena ". –

+9

A pesar de eso, exactamente lo que estaba buscando –

+8

'string.Format (" {0: D4} ", myInt)' – Tonatio

15
string strvalue="11".PadRight(4, '0'); 

salida = 1100

string strvalue="301".PadRight(4, '0'); 

salida = 3010

string strvalue="11".PadLeft(4, '0'); 

salida = 0011

string strvalue="301".PadLeft(4, '0'); 

salida = 0301

Cuestiones relacionadas