Chaîne de Format d'un nombre à 3 chiffres
Au lieu de cela, je veux profiter de string.format()
pour accomplir le même résultat:
if (myString.Length < 3)
{
myString = "00" + 3;
}
- Jetons un coup d'oeil à ce post : ici dans stackoverflow
- Pouvez-vous préciser pourquoi
myString
devraient devenir des "003"? Quelle est la corrélation avec le numéro " 3 " en dehors de la durée?
Vous devez vous connecter pour publier un commentaire.
Si vous êtes juste de formater un nombre, il vous suffit d'indiquer le bon personnalisé au format numérique pour en faire un 3 chiffres chaîne directement:
Ou, alternativement, utilisez la standard D chaîne de format:
string.Format("This is my number: {0:D3}", number)
number
est un int. Sinumber
est un double, par exemple, il devra êtrestring.Format("{0:000}", number)
$"This is my number: {number.ToString("D3")}";
var myString = $"This is my number: {number:D3}";
Il est appelé Rembourrage:
.ToString()
n'est pas directement à l'aide deString.Format()
soit (bien qu'il est sous le capot)....ToString("format")
etString.Format("format", value)
est le même: le formatage d'une valeur à une chaîne de format.(Ne peux pas commenter encore avec assez de réputation , permettez-moi d'ajouter une note)
Juste au cas où votre sortie doivent être de longueur fixe de 3 chiffres , c'est à dire pour le nombre de courir jusqu'à 1000 ou plus (réservé longueur fixe), n'oubliez pas d'ajouter mod 1000 sur elle .
Sentier de l'échantillon sur Fiddler https://dotnetfiddle.net/qLrePt
"Comment: Pad un certain Nombre de Zéros"
http://msdn.microsoft.com/en-us/library/dd260048.aspx
Vous pouvez également le faire : string.Format("{0:D3}, 3);
C'est comment c'est fait à l'aide de la chaîne d'interpolation C# 7
- T-il
String.Format
?Cela ressemble à un travail pour
String.Padleft
Ou, si vous êtes à la conversion directe à partir d'un int:
C'est une aiguille courte chaîne format Interpolation: