Double to String保持尾随零

我遇到了这个问题而我无法想到最佳解决方案,我尝试将double值转换为字符串并将’(’)转换为’。’。 这很好,但只有当尾随数字不为零时,我的字符串中需要零,即使值为1234.0。 这适用于十进制值。 试图将双精度转换为十进制,但我松散了零的十进制数字。

[编辑]抱歉忘了提到C#.NET

我知道我错过了什么。 我会感激一些建议。

谢谢

这取决于语言。 C#中的一个例子

d.ToString("0.00"); 

会产生一个带有2位小数的双精度值(零或其他)。

…在Fortran中,你可以做类似的事情:–)

  write(*,110) x 110 format (F5.3) 

(猜我们真的要知道使用了什么语言……)

如果这是在Java中,请查看NumberFormat类的setMinimumFractionDigits()方法。

例:

 double d1 = 2.5; double d2 = 5.0; NumberFormat nf = NumberFormat.getInstance(); nf.setMinimumFractionDigits(2); String d1s = nf.format(d1); String d2s = nf.format(d2); System.out.println("d1s: " + d1s + " and d2s: " + d2s); 

产生

d1s:2.50和d2s:5.00