Как использовать пользовательский формат числа на C#?

Приветствую всех. Иногда в своих приложения мы хотим использовать свой собственный вариант отображения данных. Но подходящего знака форматирования нет, вот для этого были придуманы универсальный тип, который позволит вам изменить и вывести ваше число так как вы хотите.

Рассмотрим пример:

    using System;
    class Program {
     public static int Main() {
      //# — округление до целого числа
      decimal val0 = 123.4567m;
      Console.WriteLine("{0:#}", val0);
      //.### — справа от десятичной точки, задает количество десятичных разрядов
      Console.WriteLine("{0:.##}", val0);
      //000##.## — ноль заполняет недостающие цифры нулями
      Console.WriteLine("{0:0000#.##}", val0);
      //#% — отображает процентный формат
      float val1 = 0.25f;
      Console.WriteLine("{0:#%}", val1);
      //#,###.## — запятая отделяет количество разрядов
      decimal val2 = 100000000.1234m;
      Console.WriteLine("{0:#,###.##}", val2);
      //+#.##;-#.##;0.00 — несколько форматов
      /*; — отделяет разделы, которые описывают формат для положительных, 
      отрицательных и нулевых значений*/
      decimal input;
      Console.Write("Введите значение : ");
      decimal.TryParse(Console.ReadLine(), out input);
      Console.WriteLine("{0:+#.##;-#.##;0.00}", input);
      Console.Write("Введите значение : ");
      decimal.TryParse(Console.ReadLine(), out input);
      Console.WriteLine("{0:+#.##;-#.##;0.00}", input);
      Console.Write("Введите значение : ");
      decimal.TryParse(Console.ReadLine(), out input);
      Console.WriteLine("{0:+#.##;-#.##;0.00}", input);
      Console.ReadKey();
      return 0;
     }
    }
123
123,46
00123,46
25%
100 000 000,12
Введите значение : -123,45
-123,45
Введите значение : 0
0,00
Введите значение : 123,45
+123,45 

Обновлено: 26.12.2019 — 19:45

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.