54 votes

Chaîne de caractères.Le Format d'un nombre entier d'utiliser un séparateur de milliers, sans décimales ou 0 pour les petits entiers

Question idiote, je veux formater un nombre entier de sorte qu'il s'affiche avec le 1000 du séparateur (,), mais aussi sans décimales et sans un 0.

Mes tentatives ont été jusqu'à présent:

String.Format("{0} {1}", 5, 5000);            // 5 5000
String.Format("{0:n} {1:n}", 5, 5000);        // 5.00 5,000.00
String.Format("{0:0,0} {1:0,0}", 5, 5000);    // 05 5,000

La sortie de je suis après:

5 5,000

Il est évident que je suis absent?

54voto

Richard Friend Points 7917

Cela a fonctionné pour moi.

String.Format("{0:#,0} {1:#,0}", 5, 5000); // 5 5,000

48voto

ZafarYousafi Points 1263

Essayez ceci:-

String.Format("{0:n0}",5000) // 5,000
String.Format("{0:n0}",5) // 5
String.Format("{0:n0}",0) // 0

25voto

Ruben Bartelink Points 23945
String.Format("{0:#,0} {1:#,0}", 5, 5000); // "5 5,000"
  • 0 dans une chaîne de format moyen de mettre le doigt qui appartient ici, ou bien un [avant/après] zéro [pour rendre les choses aligner, etc.]. EDIT: Vous allez certainement vouloir aussi le dernier chiffre dans le modèle, ou une valeur de zéro sera rendu par une Chaîne vide
  • # les moyens de ne rien mettre dans la sortie, sauf si il y a un chiffre significatif ici.

EDIT (merci @eulerfx):

  • la dernière partie doit être un 0 plutôt qu'un # (que j'ai d'abord eu comme une valeur de zéro serait autrement être rendue sous forme d'une chaîne de longueur nulle.

4voto

Anax Points 5163

Essayez

String.Format("{0:#,#}", 4000);

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X