我正在努力应用正确的数字格式模式来获得以下内容: 1 000,00,使用类似“ ### ###,000”的名称。我知道,通过在代码中设置区域性,我们可以指定区域(例如fr-CA)来获得所需的格式,而无需设置自定义模式。尽管这确实非常有效,但我正在寻找一种替代解决方案,以避免指定区域性。由于某些原因,小数点分隔符始终被识别为“。”期间,我无法设置逗号。
答案 0 :(得分:2)
您可以将NumberFormatInfo
与string.Format
结合使用。
decimal myDecimal = 12345.67m;
NumberFormatInfo nfi = new NumberFormatInfo { NumberDecimalSeparator = "," };
string formattedNumber = string.Format(nfi, "{0:### ### ###.###}", myDecimal);
Console.WriteLine(formattedNumber); // Prints "12 345,67"