我想在一个数字的千位上加一个逗号。

String.Format()是正确的路径吗?我应该使用什么格式?


当前回答

请注意,您正在格式化的值应该是数字。 它看起来不像会接受数字的字符串表示,格式是逗号。

其他回答

c# 7.1(也许更早?)通过字符串插值使这变得简单而美观:

var jackpot = 1_000_000; // underscore separators in numeric literals also available since C# 7.0
var niceNumberString = $"Jackpot is {jackpot:n}";
var niceMoneyString = $"Jackpot is {jackpot:C}";
String.Format("0,###.###"); also works with decimal places

试试这个:

var number = 123456789;
var str = number.ToString("N0");

结果是:“123,456,789”

请注意,您正在格式化的值应该是数字。 它看起来不像会接受数字的字符串表示,格式是逗号。

int number = 1000000000;
string whatYouWant = number.ToString("#,##0");
//You get: 1,000,000,000