3

つまり、0.123 を「.123」と表示したいのですが、0 は「0」と表示する必要があります。現在、私が持っている最高のものは

String.Format("{0:.###}", n)

0.123 の場合は ".123" になりますが、0 の場合は "" (空の文字列) になります。

4

3 に答える 3

9

セパレータとして使用する場合は;、正、負、およびゼロの値の形式を指定できます。 は、正と負の値の先頭のゼロを省略してstring.Format("{0:.###;-.###;0}", n)「0」を表示します。こちらn==0の MSDN リファレンスを確認してください。

于 2013-05-09T22:00:39.867 に答える
4

他のすべてが失敗した場合は、次のようなことができます。

 string s = n == 0 ? "0" : String.Format("{0:.###}", n);

華麗ではありませんが、仕事を成し遂げるでしょう:-)

于 2013-05-09T21:50:04.400 に答える
0

0ここで試すことができますコードをテストし、変数をからに変更して.1234テストできる場所を追加しました

var decNum =.1234;//change to 0 will return 0 change to .1234 will return the correct formatted value

var formatDecil = String.Format("{0:.###}", decNum);
formatDecil = string.IsNullOrEmpty(formatDecil) ? 0.ToString():formatDecil;
于 2013-05-09T22:08:23.623 に答える