Je me sens comme c'est une question très noob .. mais je ne peux pas obtenir la bonne déclaration pour cela.Obtenir des caractères derrière le point dans un double
À des fins d'affichage, je veux diviser un double
en deux: la partie avant le point et les deux premiers chiffres après le point. J'en ai besoin comme string
. Langue cible: C#.
Par exemple: 2345.1234
devient "2345"
et "12"
Je sais comment obtenir la partie avant le point, qui est tout simplement:
Math.Floor(value).ToString()
... mais quelle est la bonne façon d'obtenir la partie " derrière le point "? Il doit y avoir une belle façon de le faire de manière simple ...
Je ne peux pas penser à autre chose alors:
Math.Round(100 * (value - Math.Floor(value))).ToString("00");
Je suis sûr qu'il ya une meilleure façon, mais je Je ne peux pas y penser. N'importe qui?
Il y a certainement un moyen * meilleur * puisque la technique que vous avez trouvée n'est pas * correcte *. Il échoue si le double est négatif, par exemple. –
C'est vrai, mais j'ai oublié de mentionner que la valeur représente le prix d'un produit, ce qui est généralement positif, malheureusement :) – Dirk
Si vous traitez avec de l'argent, vous devriez probablement envisager d'utiliser le type décimal. Cela ne vous aidera probablement pas à obtenir la partie fractionnaire du nombre, mais cela aidera à garder votre argent droit! – wageoghe