14

我有一个类型为金钱的表格列“金额”。当我通过存储过程检索其值时,它返回的值最多为 4 位小数(因为类型为 money)。我希望该值最多保留两位小数,并且我希望它在代码中处理。我将如何通过将值四舍五入到小数点后 2 位来做到这一点。谢谢

4

8 回答 8

24

有关格式化数字的详细说明,请阅读自定义数字格式

value.ToString("0.00");

在 C# 6 或更高版本中,您可以使用字符串插值来获得更简洁的语法。

$"{value:0.00}";
于 2013-03-08T06:36:52.780 回答
4

表示层格式:

string.Format("{0:#.##}", value);
于 2013-03-08T06:36:38.537 回答
4

好吧,我试了一下,得到了正确的结果。

下面是我使用的代码:

funding.amount= Math.Round(decimal.Parse(dr["Amount"].ToString()), 2).ToString();

//由于金额是字符串类型,所以我使用了上面的代码。我们也可以使用下面的代码:

decimal.Round(yourValue, 2, MidpointRounding.AwayFromZero);

http://msdn.microsoft.com/en-us/library/9s0xa85y.aspx

于 2013-03-08T12:40:02.387 回答
1

您可以使用标准数字格式 示例:

decimal dValue = 1.268;
string sValue = dValue.ToString("N"); // 1.27
于 2013-03-08T06:45:46.497 回答
1

在离开事件中写下这段代码

 Double x;
        Double.TryParse(txtLocl.Text, out x);
        txtLocl.Text = x.ToString("0.00");

离开后它只允许保留两位小数

于 2013-03-08T07:17:48.640 回答
1
string.Format("{0:0.00}", your_value);
于 2018-10-22T07:18:13.377 回答
0

测试这段代码:

value.ToString("F2");
于 2020-01-01T11:52:51.040 回答
0
Text='<%#Bind("Value","{0:F2}") %>'
于 2020-12-03T06:41:42.837 回答