web-dev-qa-db-fra.com

C # int format ToString sur 2 caractères int?

Comment utiliser la méthode ToString sur un entier pour afficher un caractère à 2 caractères

int i = 1; i.ToString() -> "01" instead of "1"

Merci.

23
Ray Fan

Vous pouvez utiliser i.ToString("D2") ou i.ToString("00")

Voir Chaînes de format numérique standard et Chaînes de format numérique personnalisées sous Microsoft Docs pour plus de détails

60
Patrick McDonald

Cela devrait le faire:

String.Format("{0:00}",i);

Voici un lien vers un article de MSDN sur l'utilisation de chaînes de mise en forme personnalisées: http://msdn.Microsoft.com/en-us/library/0c899ak8.aspx

13
Chris Trombley

Pour vous assurer qu'au moins 2 chiffres sont affichés, utilisez la chaîne de formatage "00".

i.ToString("00");

Voici un guide de référence pratique sur les différentes façons de formater les chaînes numériques.

5
JaredPar

i.ToString("00") Regardez this pour plus de règles.

3
rerun

Dans tous les cas, vous voulez vérifier s'il ne s'agit que d'un nombre, utilisez l'expression régulière:

Regex OneNumber = new Regex("^[0-9]$");
OneNumber.Replace(i.ToString(), "0" + i)
0
Mayer Spitzer

En C # 6, vous pouvez écrire:

var i = 1;
var stringI = $"{i:D2}";

$ - interpolation de chaîne

0
M a