Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在本地化的千位分隔符中设置数字格式,使小数位数保持不变?_C#_Asp.net Mvc - Fatal编程技术网

C# 如何在本地化的千位分隔符中设置数字格式,使小数位数保持不变?

C# 如何在本地化的千位分隔符中设置数字格式,使小数位数保持不变?,c#,asp.net-mvc,C#,Asp.net Mvc,我有一些数字如下 double num1 = 123456789.2345; decimal num2 = 123456789.2M; 我想用本地化的千位分隔符格式化它们,保持小数位数不变。我试过使用下面的代码 NumberFormatInfo nfi = new CultureInfo( "en-US", false ).NumberFormat; Console.WriteLine( num1.ToString( "N", nfi ) ); /* Changed Num1 to Num2

我有一些数字如下

double num1 = 123456789.2345;
decimal num2 = 123456789.2M;
我想用本地化的千位分隔符格式化它们,保持小数位数不变。我试过使用下面的代码

NumberFormatInfo nfi = new CultureInfo( "en-US", false ).NumberFormat;
Console.WriteLine( num1.ToString( "N", nfi ) );
/* Changed Num1 to Num2 as per question*/
Console.WriteLine( num2.ToString( "N", nfi ) );
但它也会改变小数位数,并产生以下输出

123,456,789.23
123,456,789.20

我们将非常感谢您的帮助。谢谢

为什么要保持小数位数不变?任何本地化的格式化程序都有自己的千位分隔符和小数分隔符组合。对于某些文化,“.”是千位分隔符,“.”也是十进制分隔符。如果需要自定义格式,则需要编写自己的格式设置程序。@DanteisNotagek,因为这些数字由数据库控制,并且字段之间的精度和字段所需的精度类型不同。@Amit我需要保持十进制和千位分隔符与区域设置以及位数相同。我只需要根据区域设置对它们进行分组。