Подтвердить что ты не робот

Что такое формат ToString ( "N0" )?

Этот код из книги Чарльза Петцольда "Программирование Windows Шестой выпуск":

public object Convert(object value, Type targetType, object parameter, string language) 
{ 
    return ((double)value).ToString("N0"); 
}

ToString("N0") должен печатать значение с разделителями запятой и без десятичных точек. Я не могу найти ссылку на соответствующие перегрузки ToString и "N0" в документации. Пожалуйста, укажите мне место в документации .NET.

4b9b3361

Ответ 1

Просмотрите following article на MSDN о примерах формата N Это также описано в статье Standard Numeric Format Strings.

Соответствующие выдержки:

//       Formatting of 1054.32179:
//          N:                     1,054.32 
//          N0:                    1,054 
//          N1:                    1,054.3 
//          N2:                    1,054.32 
//          N3:                    1,054.322 

Когда спецификатор точности управляет количеством дробных цифр в строке результата, строка результата отражает число, округленное до представимого результата, ближайшего к бесконечно точному результату. Если есть два одинаково близко представимых результата:

  • В .NET Framework и .NET Core до .NET Core 2.0 среда выполнения выбирает результат с наименьшей значащей цифрой (то есть с использованием MidpointRounding.AwayFromZero).
  • В .NET Core 2.1 и более поздних версиях среда выполнения выбирает результат даже с наименьшей значащей цифрой (то есть, используя MidpointRounding.ToEven).

Ответ 2

Здесь находится документация:

http://msdn.microsoft.com/en-us/library/dwhawy9k.aspx

Указатель формата числового ( "N" ) преобразует число в строку форма "-d, ddd, ddd.ddd...", где "-" указывает отрицательное число символ, если требуется, "d" указывает цифру (0-9)...

И здесь они говорят о стандарте (2):

http://msdn.microsoft.com/en-us/library/system.globalization.numberformatinfo.numberdecimaldigits.aspx

      // Displays a negative value with the default number of decimal digits (2).
      Int64 myInt = -1234;
      Console.WriteLine( myInt.ToString( "N", nfi ) );

Ответ 3

Вот хороший старт, возможно,

Double.ToString()

Посмотрите в примерах для нескольких различных вариантов форматирования Double.ToString(строка)

Ответ 4

Вы можете найти список форматов здесь (в Double.ToString() - MSDN-Article) в качестве комментариев в разделе примера.