字符串格式 – 如何更改负号位置

我有一个string.Format像这样:

 string Test = string.Format("{0:#,0}", NegativeNumber); 

如何更改负号位置(方向 – >左或右)?

最简单的路线可能是为负数设置不同的格式

 string Test = string.Format("{0:#,0;#,0-}", NegativeNumber); 

结果:

 PS C:\> '{0:#,0;#,0-}' -f -17.2 17- PS C:\> '{0:#,0;#,0-}' -f 17.2 17 

自定义数字格式字符串

分号(;)是条件格式说明符,它根据数值是正数,负数还是零来对数字应用不同的格式。 要产生此行为,自定义格式字符串最多可包含由分号分隔的三个部分。 这些部分在下表中描述。

这会工作:

 String.Format("{0:0.00;0.00-;zero}", -123.4567);