string a = "9.42";
string b = "1610.25";
decimal aa = decimal.Parse(a, CultureInfo.InvariantCulture);
decimal bb = decimal.Parse(b, CultureInfo.InvariantCulture);
decimal res = decimal.Multiply(aa, bb);
string res2 = res.ToString("#0.00", CultureInfo.CreateSpecificCulture("sv-SE"));
结果
//res = 15168.555
//res2 = "15168,56"
我想要输出res2 = 15168,55。如何实现呢?
答案 0 :(得分:5)
默认的舍入方法是将中点值舍入到最接近的偶数小数,例如1.555
四舍五入为1.56
,但1.585
四舍五入为1.58
。
您可以使用Math.Floor
方法向下舍入,但它没有超载,您可以指定小数位数,因此您需要乘以和除以:
res = Math.Floor(res * 100m) / 100m;
答案 1 :(得分:0)
string res2 = (Math.Floor(res * 100) / 100).ToString();