我有這個問題,我不能想到最好的解決方案,我試着將double值轉換成一個字符串,並將'''替換爲'。'。 這工作得很好,但只有當尾數不爲零時,即使值爲1234.0,我也需要在我的字符串中置零。這對小數值有效。試圖將雙精度轉換爲十進制,但我失去了零的十進制數字。雙重字符串保持結尾零
[編輯] 對不起忘了提及的C#.NET
我知道我失去了一些東西。我會感謝一些建議。
謝謝
我有這個問題,我不能想到最好的解決方案,我試着將double值轉換成一個字符串,並將'''替換爲'。'。 這工作得很好,但只有當尾數不爲零時,即使值爲1234.0,我也需要在我的字符串中置零。這對小數值有效。試圖將雙精度轉換爲十進制,但我失去了零的十進制數字。雙重字符串保持結尾零
[編輯] 對不起忘了提及的C#.NET
我知道我失去了一些東西。我會感謝一些建議。
謝謝
這取決於語言。在C#中的一個例子
d.ToString("0.00");
會產生一個雙精度小數點後兩位數的數字(零或以其他值)。
Thanx工作很好:) – 2010-03-05 16:37:50
http://msdn.microsoft.com/en-us/library/system.object.tostring.aspx – 2010-03-05 16:43:06
如果這是Java版本,請查看NumberFormat class的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
...和Fortran語言,你可以這樣做::-)
write(*,110) x
110 format (F5.3)
(猜猜我們真的必須知道正在使用什麼語言......)
+1:我要刪除我的答案 - 現在,OP說C# - - 但在閱讀你的答案後,我想我會離開它。 – Pops 2010-03-05 16:41:57
這是寫什麼語言? – 2010-03-05 16:26:40
這需要澄清。你想從輸入中得到什麼輸出?什麼不工作?什麼編程語言? – 2010-03-05 16:26:48
讓我看看codez! – roryf 2010-03-05 16:27:17