Вывести числа в определенном формате - C#

Узнай цену своей работы

Формулировка задачи:

Добрый день, есть следующая задача: есть числа в следующем формате: 98764,81 необходимо выводить числа в следующем формате: 98 764-81 Числа могут быть любые, любой длины и разрядности. Суть одна: тысячи отделяются пробелами, а сотые знаком тире. Я делаю сейчас это следующим образом. Но дико не нравится, ибо не красиво.
private string SummStr(string summ)
        {
            summ =  Double.Parse(summ.Replace(",", "").Replace(".", "")).ToString("000 000 000 000-00");
            int k = 0;
            for (int i = 0; i < summ.Length; i++)
            {
                if (summ[i] == '0' || summ[i] == ' ')  k++; 
                else  break; 
            }
            return summ.Remove(0, k);
        }

Решение задачи: «Вывести числа в определенном формате»

textual
Листинг программы
        private string SummStr(string summ)
        {
            string formatString = "### ### ### ##0.00";
 
            NumberFormatInfo nfi = new NumberFormatInfo();
            nfi.NumberDecimalDigits = 2;
            nfi.NumberDecimalSeparator = "-";
 
            return Double.Parse(summ).ToString(formatString, nfi);
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.75 из 5
Похожие ответы