C # IFormatable ToString ("0,0000") - PullRequest
       21

C # IFormatable ToString ("0,0000")

1 голос
/ 22 января 2010

У меня есть класс, и я хочу воспроизвести функциональность, связанную с ToString("0.0000"), а также некоторые другие функции числового форматирования. Как это может быть сделано?

Ответы [ 2 ]

1 голос
/ 22 января 2010
class MyNumber : IFormattable
{
   decimal value;
   public MyNumber(decimal value)
   { this.value = value; }

   string IFormattable.ToString(string format, IFormatProvider formatProvider)
   { return value.ToString(format, formatProvider); }

   public string ToString(string format)
   { return ((IFormattable)this).ToString(format, System.Globalization.CultureInfo.CurrentCulture); }
}

class Program
{
   static void Main(string[] args)
   {
      MyNumber num = new MyNumber(3.1415926m);
      Console.WriteLine(num.ToString("0.0000"));
      Console.WriteLine("{0:0.0000}", num);
   }
}
0 голосов
/ 22 января 2010

Регулярные выражения - это, вероятно, ваш лучший выбор.

...