format number in C# [duplicate]
Possible Duplicate:
.NET String.Format() to add commas in thousands place for a number 开发者_开发知识库
How to format a number 1234567 into 1,234,567 in C#?
For format options for Int32.ToString(), see standard format strings or custom format strings.
For example:
string s = myIntValue.ToString("#,##0");
The same format options can be use in a String.Format, as in
string s = String.Format("the number {0:#,##0}!", myIntValue);
Do note that the ,
in that format doesn't specify a "use a comma" but rather that the grouping character for the current culture should be used, in the culture-specific positions.
You also do not need to specify a comma for every position. The fact that there is a comma in the format string means that the culture-specific grouping is used.
So you get "1 234 567 890" for pl-PL or "1,23,45,67,890" for hi-IN.
var decimalValue = 1234567m;
var value = String.Format("{0:N}", decimalValue); // 1,234,567.00
or without cents
var value = String.Format("{0:N0}", decimalValue); // 1,234,567
Try String.Format("{0:##,####,####}", 8958712551)
For Examples have a look at http://www.csharp-examples.net/string-format-double/
Using your current locale's thousands separator:
int n = 1234567 ;
n.ToString("N0");
Or, use the overload to ToString, which takes the culture as a parameter.
string formatted = string.Format("{0:##,#}", 123456789);
It depends on the culture of your computer. Some countries use commas, some countries use dots. On my computer the output was: 123.456.789
精彩评论