我在 C# 中遇到货币格式问题。我正在使用框架 2.0。
当我使用此代码时:
CultureInfo culture = new CultureInfo("fr-FR", false);
NumberFormatInfo numberFormatInfo = (NumberFormatInfo)culture.NumberFormat.Clone();
numberFormatInfo.CurrencySymbol = "CHF";
price.Value.ToString("C", numberFormatInfo)
似乎给了我一个在金额和货币之间有空格的字符串。那太糟了!我绝对需要一个不间断的空间!到底是怎么回事?我缺少格式属性还是 C# 标准?
谢谢你的帮助!
所以基本上你想要 price.Value.ToString("C", numberFormatInfo).Replace(' ', '\u00A0');?至少那应该是非破坏空间的代码。– 科拉克
与上述评论者完全相同,但使用 asci-values 代替;> price.Value.ToString("C", numberFormatInfo).Replace((char) 32, (char) 160); (160 很多 > 更容易记住,至少对我来说 :))——弗林德伯格