当我们转换String.Format("{0:C}", 126.45)
它返回$ 126.45
但如果我们转换 String.Format("{0:C}", -126.45)
它返回($ 126.45)
为什么负转换返回括号?如果我们不想要这个括号怎么办?
Ado*_*rez 10
你为什么不尝试这样的事情:
String.Format("{0:$#,##0.00}", -126.45)
Run Code Online (Sandbox Code Playgroud)
根据这里的文档,"{0:C1}"或"{0:C2}"的格式应该可以工作,但由于一些奇怪的原因,它不是..
另一种方法可能是设置CultureInfo:
CultureInfo culture = (CultureInfo)CultureInfo.CurrentCulture.Clone();
culture.NumberFormat.CurrencyNegativePattern = 1;
string s = string.Format(culture, "{0:c}", -126.45);
Run Code Online (Sandbox Code Playgroud)
参考这里