2009-04-23 10 views
5

Comment arrondir les valeurs décimales?
Exemple:Arrondir les valeurs décimales en C#

Valeur décimale = "19500,98"

i besoin d'afficher cette valeur à textBox avec arrondi comme "19501"

si la valeur décimale = "19500,43"

puis

valeur = "19500"

+0

Il y a plus d'une façon d'arrondir les nombres, en fonction du domaine d'application dont vous avez besoin faire attention d'utiliser le bon type d'arrondi au bon moment. – Richard

Répondre

20

Regardez Math.Round(decimal) ou the overload which takes a MidpointRounding argument.

Bien sûr, vous devrez analyser et mettre en forme la valeur pour l'obtenir de/vers le texte. Si cette entrée est entrée par l'utilisateur, vous devez probablement utiliser decimal.TryParse, en utilisant la valeur de retour pour déterminer si l'entrée était valide ou non.

string text = "19500.55"; 
decimal value; 
if (decimal.TryParse(text, out value)) 
{ 
    value = Math.Round(value); 
    text = value.ToString(); 
    // Do something with the new text value 
} 
else 
{ 
    // Tell the user their input is invalid 
} 
5

Math.Round (valeur, 0)

1

Try this ...

var someValue=123123.234324243m; 
var strValue=someValue.ToString("#"); 
-2
Total = Math.Ceiling(value) 

Répondre si elle vous aide

+1

Le plafond l'arrondit. '19500.43' deviendra' 19501', et non '19500' comme le voulait l'OP. – Ivar

+0

oui donc si vous voulez arrondir le montant s'il est supérieur à 0.5 alors vous pouvez utiliser Math.Round (Value, MidpointRounding.AwayFromZero); – Bilal

+0

ou peut utiliser cette Math.Round (Value, MidpointRounding.ToEven); – Bilal