Créer une chaîne à deux chiffres à partir d'un entier à un chiffre

91

Comment puis-je avoir un entier à deux chiffres dans une chaîne, même si l'entier est inférieur à 10?

[NSString stringWithFormat:@"%d", 1] //should be @"01"
aneuryzm
la source

Réponses:

303

Je crois que les spécificateurs stringWithFormat sont les spécificateurs printf standard IEEE . As-tu essayé

[NSString stringWithFormat:@"%02d", 1];
hautement caféiné
la source
4
j'adore ... 2 ans dans l'iphone et maintenant je le sais ... merci
mon
25

Utilisez la chaîne de format %02d. Cela spécifie de formater un entier avec une largeur de champ minimale de 2 caractères et de remplir les valeurs formatées avec 0 pour respecter cette largeur. Voir man fprintfpour tous les détails sanglants des spécificateurs de format.

Si vous formatez des nombres pour les présenter à l'utilisateur, cependant, vous devriez vraiment utiliser NSNumberFormatter. Différents paramètres régionaux ont des attentes très différentes sur la façon dont les nombres doivent être formatés.

Jeremy W. Sherman
la source
-2
[NSString stringWithFormat:@"%00.02d", intValue]

Cela m'aide à convertir 1 en 01.

user2357514
la source