Search Results for

    Show / Hide Table of Contents

    Форматирование

    Format

    Функция Параметры Возвращаемое значение
    Format string format,``params object[] args string

    Заменяет каждый элемент формата в указанной строке format значением соответствующего параметра в массиве args.

    Например, следующий вызов функции:

    Format("Name = {0}, hours = {1:hh}", myName, DateTime.Now)
    

    содержит элементы формата "{0}" и "{1:hh}". Они заменяются значениями myName и DateTime.Now. Результат может выглядеть так:

    Name = Alex, hours = 12
    

    Элемент формата имеет следующий синтаксис:

    {index[,alignment][:formatString]}
    

    где

    • index - обязательный номер значения, которое будет подставлено в это место строки;
    • alignment - необязательная ширина форматированного значения;
    • formatString - необязательный спецификатор формата.

    Для форматирования числовых значений используются следующие стандартные символы-спецификаторы:

    Символ Тип Описание
    C или c Валюта Число преобразуется в строку, представляющую денежные единицы. Format("{0:C}", 10) = "10,00р."
    D или d Десятичное число Этот формат доступен только для целых типов. Число преобразуется в строку, состоящую из десятичных цифр (0-9). Format("{0:D}", 10) = "10"
    E или e Научный Число преобразуется в строку вида "-d.ddd…E+ddd" или "-d.ddd…e+ddd", где знак "d" представляет цифру (0-9).Format("{0:E}", 10) = "1,000000E+001"
    F или f Фиксированная запятая Число преобразуется в строку вида "-ddd.ddd…", где знак "d" представляет цифру (0-9).Format("{0:F}", 10) = "10,00"
    G или g Общий Число преобразуется в наиболее короткую запись.Format("{0:G}", 10) = "10"
    N или n Число Число преобразуется в строку вида "-d,ddd,ddd.ddd…", где знак "d" - цифра (0-9), знак "," - разделитель тысяч, а знак "." - разделитель целой и дробной части.Format("{0:N}", 1234.56) = "1 234,56"
    P или p Процент Число преобразуется в строку, представляющую проценты. Преобразуемое число умножается на 100, чтобы соответствовать процентам. Format("{0:P}", 0.15) = "15,00%"
    X или x Шестнадцате-ричный Этот формат доступен только для целых типов. Число преобразуется в строку шестнадцатеричных знаков. Регистр шестнадцатеричных знаков, превосходящих 9, совпадает с регистром указателя формата.Format("{0:X}", 26) = "1A"

    После символа-спецификатора формата можно указать число. Для чисел с плавающей запятой это будет означать количество знаков после запятой в форматированном значении:

    Format("{0:C1}", 12.23) = "12,2р."
    

    Если стандартных средств форматирования чисел недостаточно, можно использовать символы настраиваемого числового формата:

    Символ Описание
    0 Знак-заменитель нуля. Если форматируемое значение содержит цифру в этой позиции, она копируется в выходную строку. В противном случае 0 отображается в выходной строке.
    # Заместитель цифры. Если форматируемое значение содержит цифру в этой позиции, она копируется в выходную строку. В противном случае в выходной строке ничего не записывается.
    . Разделитель дроби. Первый знак "." в строке формата определяет положение разделителя дроби.
    , Разделитель числовых разрядов. Знак "," в строке формата определяет положение разделителя групп разрядов.
    % Заместитель процентов. При использовании знака "%" в строке форматирования число будет умножено на 100, и в соответствующую позицию в выходной строке будет вставлен символ "%".
    ; Разделитель секций. Знак ";" служит для разделения секций положительных, отрицательных и нулевых чисел в строке формата.

    Примеры использования:

    Format("{0:$#,##0.00}", 1024.25) = "$1 024,25"
    Format("{0:00%}", 0.25) = "25%"
    Format("{0:$#,##0.00;($#,##0.00);Zero}", 1024.25) = "$1 024,25"
    Format("{0:$#,##0.00;($#,##0.00);Zero}", -1024.25) = "($1 024,25)"
    Format("{0:$#,##0.00;($#,##0.00);Zero}", 0) = "Zero"
    

    Для форматирования даты/времени используются следующие стандартные символы-спецификаторы:

    Символ Тип Пример
    d Короткий шаблон даты "03.08.2009"
    D Полный шаблон даты "3 августа 2009 г."
    f Полный шаблон даты и времени (короткий шаблон времени) "3 августа 2009 г. 20:13"
    F Полный шаблон даты и времени (полный шаблон времени) "3 августа 2009 г. 20:13:33"
    g Общий шаблон даты и времени (короткий шаблон времени) "03.08.2009 20:13"
    G Общий шаблон даты и времени (полный шаблон времени) "03.08.2009 20:13:33"
    t Короткий шаблон времени "20:13"
    T Полный шаблон времени "20:13:33"

    Так же можно использовать символы настраиваемого формата даты/времени:

    Символ Описание
    d Представляет день месяца в виде числа от 1 до 31. Одноразрядные числа форматируются без нуля в начале.
    dd Представляет день месяца в виде числа от 01 до 31.
    ddd Представляет сокращенное название дня недели.
    dddd Представляет полное название дня недели.
    f или F Представляет миллисекунды.
    h Представляет часы числом от 1 до 12. Одноразрядные числа форматируются без нуля в начале.
    hh Представляет часы числом от 01 до 12.
    H Представляет часы числом от 0 до 23. Одноразрядные числа форматируются без нуля в начале.
    HH Представляет часы числом от 00 до 23.
    m Представляет минуты как число от 0 до 59. Одноразрядные числа форматируются без нуля в начале.
    mm Представляет минуты как число от 00 до 59.
    M Представляет месяц как число от 1 до 12. Одноразрядные числа форматируются без нуля в начале.
    MM Представляет месяц как число от 01 до 12.
    MMM Представляет сокращенное название месяца.
    MMMM Представляет полное название месяца.
    s Представляет секунды как число от 0 до 59. Одноразрядные числа форматируются без нуля в начале.
    ss Представляет секунды как число от 00 до 59.
    y Представляет год как число из одной или двух цифр.
    yy Представляет год как число из двух цифр.
    yyyy Представляет год как число из четырех цифр.
    : Представляет стандартный разделитель времени.
    / Представляет стандартный разделитель даты.

    Примеры использования:

    Format("{0:d MMM yyyy}", DateTime.Now) = "3 авг 2009"
    Format("{0:dd/MM/yyyy}", DateTime.Now) = "03.08.2009"
    Format("{0:d MMMM}", DateTime.Now) = "3 августа"
    Format("{0:HH:mm}", DateTime.Now) = "23:32"
    Format("{0:dd/MM/yyyy HH:mm}", DateTime.Now) = "03.08.2009 23:32"
    
    Back to top © 1998-2024 Copyright ООО «Быстрые отчеты»