La réponse acceptée est bonne et rapide :
i.ToString("00")
ou
i.ToString("000")
Si vous avez besoin de plus de complexité, String.Format vaut la peine d'être essayé :
var str1 = "";
var str2 = "";
for (int i = 1; i < 100; i++)
{
str1 = String.Format("{0:00}", i);
str2 = String.Format("{0:000}", i);
}
Pour le i = 10
cas :
str1: "10"
str2: "010"
Je m'en sers, par exemple, pour effacer le texte de certains contrôles d'étiquettes de mon formulaire :
private void EmptyLabelArray()
{
var fmt = "Label_Row{0:00}_Col{0:00}";
for (var rowIndex = 0; rowIndex < 100; rowIndex++)
{
for (var colIndex = 0; colIndex < 100; colIndex++)
{
var lblName = String.Format(fmt, rowIndex, colIndex);
foreach (var ctrl in this.Controls)
{
var lbl = ctrl as Label;
if ((lbl != null) && (lbl.Name == lblName))
{
lbl.Text = null;
}
}
}
}
}
0 votes
Il est préférable de publier un code qui se compile et s'exécute,
tostirng
n'est pas juste. Aussi, aux programmeurs,0x
suggère que vous faites référence à la base hexadécimale. Vous cherchez des "zéros de tête".0 votes
@Kobi désolé, ma langue maternelle n'est pas l'anglais et mon anglais est en fait mauvais. et je vais à l'école d'anglais tous les jours pour améliorer mon anglais. Pourriez-vous s'il vous plaît me comprendre. et j'ai édité le
tostirng
0 votes
C'est bon. C'est juste un indice. Quoi qu'il en soit, int.ToString peut prendre un format, tout comme
DateTime.ToString
.