十进制数字逗号样式



我在aspx页面上的网格视图中有一些"双精度"值。我需要在这些值中使用逗号样式,例如:

原始值 = 1986.05 所需值 = 19,86.05

原始值 = 51986.05 所需值 = 5,19,86.05

我为此使用以下代码:

e.Row.Cells[6].Text = String.Format("{0:##,##,##.##}", Convert.ToDouble(e.Row.Cells[6].Text));

它显示值为 1,986.05,但我需要它为 19,86.05

请帮忙!

您可以使用具有 2 位数字分组的自定义CultureInfo来实现此目的:

CultureInfo culture = new CultureInfo(string.Empty, true)
{
NumberFormat = { NumberGroupSizes = new int[] { 2 } }
};
Console.WriteLine((1986.05).ToString("N", culture));

输出:

19,86.05

此处提供了描述这一点的NumberGroupSizes文档集。

在你的代码中,你可以像这样实现它:

CultureInfo culture = new CultureInfo(string.Empty, true)
{
NumberFormat = { NumberGroupSizes = new int[] { 2 } }
};
e.Row.Cells[6].Text = Convert.ToDouble(e.Row.Cells[6].Text).ToString("N", culture);

最新更新