Разделите длинные числа на 3 цифры - PullRequest
7 голосов
/ 17 мая 2010

Есть ли простой способ преобразовать 1000000 в 1.000.000? Регулярное или строковое форматирование в asp.net, c #

Ответы [ 5 ]

11 голосов
/ 17 мая 2010

Вы можете использовать ToString вместе со строкой форматирования и поставщиком формата, который использует '.' как разделитель групп и определяет, что число должно быть сгруппировано в трехзначные группы (что не относится ко всем культурам):

int number = 1000000;
Console.WriteLine(number.ToString("N0", new NumberFormatInfo()
                                            {
                                                NumberGroupSizes = new[] { 3 },
                                                NumberGroupSeparator = "."
                                            }));
5 голосов
/ 17 мая 2010

Я думаю, что вы спрашиваете о форматировании для конкретной культуры. Это по-испански, например:

1000000.ToString("N", CultureInfo.CreateSpecificCulture("es-ES"));
4 голосов
/ 17 мая 2010
1000000.ToString("N0")
4 голосов
/ 17 мая 2010

Использование ToString("N") после конвертирует 1000000 в 1 000 000. Не уверен насчет. хотя

2 голосов
/ 17 мая 2010

Используйте ToString со строкой числового формата после чтения в целое число. Я считаю, что вы ищете "N" и его родственников.

Страница MSDN о строках числового формата: http://msdn.microsoft.com/en-us/library/dwhawy9k.aspx

...