Pregunta

Tengo el requisito de rellenar todos los números de un solo dígito con un cero inicial. ¿Alguien puede sugerir el mejor método? (ej. 1 - > 01, 2 - > 02, etc.)

¿Fue útil?

Solución

Llamaría a . ToString en los números, proporcionando un cadena de formato que requiere dos dígitos, como se muestra a continuación:

int number = 1;
string paddedNumber = number.ToString("00");

Si es parte de una cadena más grande, puede usar la cadena de formato dentro de un marcador de posición:

string result = string.Format("{0:00} minutes remaining", number);

Otros consejos

number.ToString().PadLeft(2, '0')

Suponiendo que solo está generando estos valores, no almacenándolos

int number = 1;
Console.Writeline("{0:00}", number);

Aquí hay un recurso útil para todos los formatos compatibles con .Red.

Agregaré esta opción como respuesta ya que no la veo aquí y puede ser útil como alternativa.

En VB.NET:

''2 zeroes left pad
Dim num As Integer = 1
Dim numStr2ch As String = Strings.Right("00" & num.ToString(), 2)

''4 zeroes left pad
Dim numStr4ch As String = Strings.Right("0000" & num.ToString(), 4)

''6 zeroes left pad
Dim numStr6ch As String = Strings.Right("000000" & num.ToString(), 6)
# In PowerShell:

$year = 2013
$month = 5
$day = 8

[string] $datestamp = [string]::Format("{0:d4}{1:d2}{2:d2}", $year, $month, $day)
Write-Host "Hurray, hurray, it's $datestamp!"
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top