Страницы

Поиск по вопросам

среда, 5 февраля 2020 г.

Разбить число на разряды

#c_sharp


Доброго времени суток!

Имеется переменная, которая принимает разные значения: от 0 до "много-много"(12358964).
Как сделать, чтобы оно разбивалось на тысячи, десятки тысяч, сотни тысяч, миллионы
и т.д.? Т.е., 10.000, 1.000, 12.358.964.

balance.text = int sum;
update.text = int income;

    


Ответы

Ответ 1



Вы не поверите — но это задача обычного .ToString(): double value = 1234567890; Console.WriteLine(value.ToString("#,#", CultureInfo.InvariantCulture)); Вывод: Обратите внимание — что в разных странах приняты свои разделители и указывая языковую культуру вы можете управлять и настраивать поведение разделителей. Например в русской локали разделитель — пробел: var culture = new CultureInfo("ru-RU"); Console.WriteLine(value.ToString("#,#", culture)); А в немецкой — точки, как вы и хотели: var culture = new CultureInfo("de-DE"); Console.WriteLine(value.ToString("#,#", culture)); А можно и в русской локали переопределить один параметр — и будет вам разделитель точкой, а все остальные параметры - как в русской локали по умолчанию: var culture = new CultureInfo("ru-RU") { NumberFormat = { NumberGroupSeparator = ".", }, }; Console.WriteLine(value.ToString("#,#", culture)); Почитайте подробнее про форматирование чисел в документации: Строки настраиваемых числовых форматов- мой пример как раз отсюда Типы форматирования в .NET - обзорный материал по форматированию

Комментариев нет:

Отправить комментарий