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