使用千分位分隔符格式化双精度数,保留小数但不保留末尾零。

6
我正在寻找一个适用于 string.Format 的格式,能够打印出以下内容。
double d = 123456.123456D;
double d2 = 123456D;

like

123,456.123456
123,456

{0:N6} 的结果为

123,456.123456
123,456.000000

{0:0.######} 的结果为

123456.123456
123456

{0:#.0} 的结果为

123,456
123,456

我无法找到适合我的格式。我需要定义自己的格式提供程序吗?

1个回答

16

你很接近了。请使用这种格式:

{0:#,0.######}

1
+1 我也是这么想的,我的答案只是缺少了 ###### 部分。 - James
1
@CristianoSousa 使用 #,0.###### 替代。我已经更新了我的答案,因为这是一个更好的格式。 - D Stanley
@DStanley 完美运行! - Cristiano Sousa
请注意:当使用 ToString() 时,应该是 #,0.#####(不包括大括号或第一个零+冒号)。 - knocte

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接