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

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

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

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

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

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

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


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

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

8   голосов , оценка 4.75 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы