在C#中格式化浮点数:小数分隔符始终可见

时间:2016-10-27 14:51:33

标签: c# .net string visual-studio

如何使用标准.NET字符串格式从12.值获取12?我已对0.###进行了测试,但无效。

double number = 12;
string.Format("{0:0.###}", number); // returns "12" not "12."

double number = 12.345;
string.Format("{0:0.###}", number); // returns "12.345"

目前我已经通过字符串操作解决了问题,但标准string.Format()是否可行?

感谢。

2 个答案:

答案 0 :(得分:1)

我认为您可以先检查double是否实际为整数,如果是,请使用简单的string.Format("{0}.", number)

double number = 12;
if (number % 1 == 0)
    Console.Write(string.Format("{0}.", number));

C# demo

答案 1 :(得分:0)

12.

提供double number = 12.345; string.Format((number % 1 == 0) ? "{0}." : "{0}", number);

12.345

提供build