Comment aurais-je séparer les milliers avec de l'espace en C#
Supposons que j'ai la suite de nombre décimal que j'ai de format, de sorte que tous les mille doivent être séparés par un espace:
897.11 to 897.11
1897.11 to 1 897.11
12897.11 to 12 897.11
123897.11 to 123 897.11
J'ai essayé Décimal.ToString("0 000.00"). Bien que cela fonctionne très bien quand le nombre est 1897.11. Mais quand c'est 897.11-je obtenir 0 897.11.
Vous devez vous connecter pour publier un commentaire.
Passer à une coutume
NumberFormatInfo
avec une coutumeNumberGroupSeparator
de la propriété, et l'utilisation de la#,#
format pour lui dire de ne nombre de groupes. Cet exemple utilise l'invariant de la culture du format de nombre de la base.Vous avez besoin d'un format de nombre personnalisé fournisseur où vous changez de personnage vous-même:
Ici, j'ai également spécifier le format comme un nombre (à l'aide de
"n"
), veuillez consulter ce lien pour d'autres options de mise en forme:Chaînes De Format Numérique Standard
Dans ce cas, il ne fonctionnera pas si vous format en tant que monnaie ou d'un pourcentage, parce que, comme vous pouvez déjà noter la
NumberFormatInfo
a des propriétés distinctes pour ceux.De la culture actuelle en format d'infos peuvent être trouvées sur
System.Globalization.CultureInfo.CurrentCulture.NumberFormat
.essayer cette
Vous recevrez :
134 566 548,00
N'oubliez pas votre culture.
avec un chaîne de format personnalisée, mais l'utilisation de '#' pas '0' 0 est obligatoire jeton, il sera là, peu importe combien de temps est le nombre, signe dièse (#) est facultatif jeton, il ne sera utilisé que pour les chiffres effectivement dans le nombre.
NOTE. Je vais le laisser ici, mais @Tim S' réponse est un meilleur.
Quand j'ai essayer ce que je vois il génère seulement le premier séparateur... je suppose que le séparateur fonctionne uniquement pour les virgules et les points ici. Comme une solution de contournement (jusqu'à la taille maximale nombre que vous attendez), essayez plutôt ceci.
1234897.11
cette résultats dans1234 897.11
(c'est à dire il ne sépare le premier du groupe).NumberFormatInfo
existéNorvégien locale utilise des espaces comme un séparateur, donc si vous avez été la conception d'un site web ou une application spécifiquement pour les Norvégiens, alors vous pourriez utiliser:
Qui résultats dans
Évidemment, si vous n'êtes pas à l'écriture d'une application pour le marché norvégien, alors ce serait une solution stupide.