如何应用不同的格式,具体取决于数字是正数还是负数

时间:2011-08-25 16:26:44

标签: c# vb.net double string.format formatting

我输出的Double可以是(+)或负数( - )。如果数字为负数,则自动包含符号( - ),是否还有一种方法可以对正数进行此操作?

我能做到的唯一(可怕)方式是:

If MyNumber <= 0 then
    string.Format("{0:0.00}", MyNumber)
Else
    string.Format("+{0:0.00}", MyNumber)
End If 

2 个答案:

答案 0 :(得分:8)

您可以使用格式的部分分隔符:

string.Format("{0:+0.00;-0.00}", num);

分号前的格式将用于正数。后面的格式将用于负数。如果您想要一个单独的零格式,请在负数格式之后添加另一种格式:

string.Format("{0:+0.00;-0.00;0.00}", num);

答案 1 :(得分:1)

string.Format("{0:+0.00;-0.00;0.00}”,MyNunber);