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

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


当前回答

试试这个:

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

结果是:“123,456,789”

其他回答

int num = 98765432;
Console.WriteLine(string.Format("{0:#,#}", num));
int number = 1000000000;
string whatYouWant = number.ToString("#,##0");
//You get: 1,000,000,000

我发现这是最简单的方法:

myInteger.ToString("N0")

如果您希望强制使用“,”分隔符,而不考虑区域性(例如在跟踪或日志消息中),那么下面的代码将可以工作,并且还有一个额外的好处,即告诉下一个偶然发现它的人您正在做什么。

int integerValue = 19400320; 
string formatted = string.Format(CultureInfo.InvariantCulture, "{0:N0}", integerValue);

设置格式为"19,400,320"

String.Format("0,###.###"); also works with decimal places