我想通过ToString()方法格式化一个数字。
我一直在使用
如何让输出显示为
我不希望像现在这样隐藏零。
我一直在使用
<myVar>.ToString("#.##");
,得到的结果是13.1
、14
和22.22
。如何让输出显示为
13.10
、14.00
以及22.22
?我不希望像现在这样隐藏零。
因为在格式字符串中,“#”用于表示可选的字符占位符; 只有在需要表示数字时才使用它。
如果你这样做:0.ToString("0.##");
你会得到:0
有趣的是,如果你这样做:0.ToString("#.0#");
你会得到:.0
如果你想要所有三个数字:0.ToString("0.00");
将产生:0.00
更多信息请参见此处
你也可以使用 数字格式化符号 ("N"
) 并带有 2
位精度。
Console.WriteLine((13.1).ToString("N2")); // 13.10
Console.WriteLine((14).ToString("N2")); // 14.00
Console.WriteLine((22.22).ToString("N2")); // 22.22
请记住,此格式说明符默认使用CurrentCulture
的NumberDecimalSeparator
。 如果您的不是 .
,则可以在ToString
方法的第二个参数中使用具有 .
作为NumberDecimalSeparator
的文化(例如InvariantCulture
)。
.ToString(".00");
int k=25;
string str_1 = k.ToString(".00"); // Output: "25,00"
#
表示该值是可选的。例如:string str_2 = 0.ToString("0.##");// Output: "0"