我正在尝试在C#中使用String.Format("{0:c}",somevalue),但我很难搞清楚如何配置输出以满足我的需求.以下是我的需求:
0输出为空白
1.00输出到1.00美元
10.00输出到10.00美元
100.00输出到$ 100.00
1000.00输出到$ 1,000.00
我已经尝试过String.Format("{0:c}",somevalue)但是对于零值,它输出$ 0.00这不是我想要的.我也尝试过String.Format("{0:$ 0,0.00; $(0,0.00);#}","somevalue",但对于1.0,它输出$ 01.00.String.Format("{0:$ 0.00; $(0.00);#}",somevalue)适用于大多数情况,但当somevalue为1000.00时,输出为$ 1000.00.
是否有适合所有5个案例的格式?我阅读的所有文档仅详细介绍了基础知识,并未涉及此类方案.
如果你使用
string.Format("{0:$#,##0.00;($#,##0.00);''}", value)
您将获得零值的"",其他值也应正确格式化.