string格式中的#
表示該值是可選的。 如果你想得到0.00
的輸出,你需要以下內容:
0.ToString("0.00");
請參閱這里了解可以傳遞給此方法的自定義數字格式 。
因為在格式string中, #
用於表示可選的字符占位符; 只有在需要表示數字時才使用。
如果你這樣做: 0.ToString("0.##");
你得到: 0
有趣的是,如果你這樣做: 0.ToString("#.0#");
你得到: .0
如果你想要所有的三個數字: 0.ToString("0.00");
產生: 0.00
從評論到這個答案,你的論點似乎是,
它應該顯示“0”,因為如果數字值為0,為什么有人會想看到一個空string?
反應很簡單: 您可以select希望顯示的方式。 這就是自定義格式string的用途。 您只需根據需要select不正確的格式string 。
根據關於數字占位符的文檔。
如果被格式化的值在格式string中出現“#”的位置有一個數字,那么該數字將被復制到結果string中。 否則,結果string中沒有任何內容存儲在該位置。 即使“0”是string中的唯一數字,該說明符也不會顯示“0”字符,如果它不是有效數字。 如果顯示的數字是有效數字,將顯示“0”字符。 “##”格式string會使值四舍五入到小數點前的最接近的數字,總是使用從零開始舍入。 例如,使用“##”格式化34.5將導致值35。
如果你想零顯示使用零地方pipe理
f格式化的值在格式string中出現“0”的位置有一個數字,然后將該數字復制到結果string中。 小數點前最左邊的“0”和小數點后最右邊的“0”的位置決定了總是出現在結果string中的數字的范圍。
“00”說明符會使值四舍五入到小數點前的最接近的數字,總是使用從零開始舍入。 例如,用“00”格式化34.5將導致值35。