Модуль Core.Printf (F#)
Расширенное форматирование в стиле printf для чисел и других типов данных.
Пространство имен/путь к модулю: Microsoft.FSharp.Core
Сборка: FSharp.Core (в FSharp.Core.dll)
module Printf
Заметки
Спецификации формата представляют собой строки с маркерами %, обозначающими заполнители формата. Заполнители формата содержат следующие параметры: %[flags][width][.precision][type], где тип интерпретируются согласно описанию в следующей таблице.
Тип |
Описание |
---|---|
%b |
Форматирование значения типа bool, представленного в формате true или false. |
%c |
Форматирование символ. |
%s |
Форматирование значения типа string, представленного в формате его содержимого, без интерпретации escape-символов. |
%d, %i |
Форматирование любого базового целочисленного типа, представленного в формате десятичного целого числа со знаком, если базовый целочисленный тип является знаковым. |
%u |
Форматирование любого базового целочисленного типа, представленного в формате десятичного целого числа без знака. |
%x |
Форматирование любого базового целочисленного типа, представленного в формате шестнадцатеричного целого числа без знака, с использованием строчных букв от a до f. |
%X |
Форматирование любого базового целочисленного типа, представленного в формате шестнадцатеричного целого числа без знака, с использованием прописных букв от A до F. |
%o |
Форматирование любого базового целочисленного типа, представленного в формате восьмеричного целого числа без знака. |
%e, %E, %f, %F, %g, %G |
Форматирование любого базового типа с плавающей запятой (float, float32), представленного в формате, соответствующем спецификациям формата с плавающей запятой в стиле C. |
%e, %E |
Форматирование значения со знаком, имеющего формат [-]d.dddde[sign]ddd, где d — одна десятичная цифра, dddd — одна или несколько десятичных цифр, ddd — три десятичные цифры, sign — знак + или -. |
%f |
Форматирование значения со знаком, имеющего формат [-]dddd.dddd, где dddd — одна или несколько десятичных цифр. Количество цифр перед десятичной точкой зависит от порядка числа, а количество цифр после десятичной точки зависит от указанной точности. |
%g, %G |
Форматирование значения со знаком, представленного в формате f или e, в зависимости от того, какой формат является более компактным для заданных значения и точности. |
%M |
Форматирование значения Decimal. |
%O |
Форматирование любого значения, выводимого на печать посредством упаковки-преобразования объекта и использования его метода ToString. |
%A, %+A |
Форматирование любого значения, выводимого на печать с параметрами макета по умолчанию. Используйте %+A для печати структуру размеченных объединений с внутренними и закрытыми представлениями. |
%a |
Общий описатель формата, для которого требуются два аргумента. Первым аргументом является функция, которая принимает два аргумента — параметр контекста соответствующего типа для заданной функции форматирования (например, TextWriter) и значение для печати — и выводит или возвращает соответствующий текст. Второй аргумент — конкретное значение для печати. |
%t |
Общий описатель формата, для которого требуется один аргумент: функция, которая принимает параметр контекста соответствующего типа для заданной функции форматирования (TextWriter) и выводит или возвращает соответствующий текст. Базовые целочисленные типы — byte, sbyte, int16, uint16, int32, uint32, int64, uint64, nativeint и unativeint. Базовые типы с плавающей запятой — float и float32. |
Необязательное width представляет собой целое число, указывающее минимальную ширину результата. Например, при указании спецификации %6d печатается целое число, перед которым выводятся пробелы для заполнения по крайней мере 6 символов. Если вместо ширины указывается символ *, принимается дополнительный целочисленный аргумент, задающий соответствующую ширину.
Допустимые флаги описаны в следующей таблице.
0 |
Добавление нулей вместо пробелов для обеспечения требуемой ширины. |
- |
Выравнивание результата влево в пределах заданной ширины. |
+ |
Добавление знака +, если число является положительным (чтобы обеспечить соответствие знаку - для отрицательных чисел). |
' ' (пробел) |
Добавление дополнительного пробела, если число является положительным (чтобы обеспечить соответствие знаку - для отрицательных чисел). |
# |
Недопустимый. |
Сокращенные обозначения типов
Тип |
Описание |
---|---|
Представляет статически анализируемый формат, связанный с записью в объект StringBuilder. Первый параметр типа указывает аргументы операции форматирования, а последний — тип возвращаемого значения. |
|
Представляет статически анализируемый формат, связанный с записью в объект StringBuilder. Параметр типа обозначает тип аргументов и возвращаемого значения операции формата. |
|
Представляет статически анализируемый формат, если при форматировании создается строка. Первый параметр типа указывает аргументы операции форматирования, а последний — тип возвращаемого значения. |
|
Представляет статически анализируемый формат, если при форматировании создается строка. Параметр типа обозначает тип аргументов и возвращаемого значения операции формата. |
|
Представляет статически анализируемый формат, связанный с записью в объект TextWriter. Первый параметр типа указывает аргументы операции форматирования, а последний — тип возвращаемого значения. |
|
Представляет статически анализируемый формат, связанный с записью в объект TextWriter. Параметр типа обозначает тип аргументов и возвращаемого значения операции формата. |
Значения
Значение |
Описание |
---|---|
bprintf : StringBuilder -> BuilderFormat<'T> -> 'T |
Печатает в StringBuilder. |
eprintf : TextWriterFormat<'T> -> 'T |
Выполняет печать форматированных выходных данных в stderr. |
eprintfn : TextWriterFormat<'T> -> 'T |
Выполняет печать форматированных выходных данных в stderr с добавлением новой строки. |
failwithf : StringFormat<'T,'Result> -> 'T |
Печатает в буфер строк и создает исключение с заданным результатом. Вспомогательные средства печати должны возвращать строки. |
fprintf : TextWriter -> TextWriterFormat<'T> -> 'T |
Выполняет печать в модуль записи текста. |
fprintfn : TextWriter -> TextWriterFormat<'T> -> 'T |
Выполняет печать в модуль записи текста с добавлением новой строки. |
kbprintf : (unit -> 'Result) -> StringBuilder -> BuilderFormat<'T,'Result> -> 'T |
Действует как bprintf, но вызывает указанную функцию для создания результата. См. kprintf. |
kfprintf : (unit -> 'Result) -> TextWriter -> TextWriterFormat<'T,'Result> -> 'T |
Действует как fprintf, но вызывает указанную функцию для создания результата. См. kprintf. |
kprintf : (string -> 'Result) -> StringFormat<'T,'Result> -> 'T |
Действует как printf, но вызывает указанную функцию для создания результата. Например, это позволяет выполнять печать не раньше, чем все выходные данные будут введены в канал. |
ksprintf : (string -> 'Result) -> StringFormat<'T,'Result> -> 'T |
Действует как sprintf, но вызывает указанную функцию для создания результата. См. kprintf. |
printf : TextWriterFormat<'T> -> 'T |
Выполняет печать форматированных выходных данных в stdout. |
printfn : TextWriterFormat<'T> -> 'T |
Выполняет печать форматированных выходных данных в stdout с добавлением новой строки. |
sprintf : StringFormat<'T> -> 'T |
Печатает в строку с помощью внутреннего буфера строки и возвращает результат в виде строки. Вспомогательные средства печати должны возвращать строки. |
Платформы
Windows 8, Windows 7, Windows Server 2012 и Windows Server 2008 R2
Сведения о версии
Основные версии библиотеки F#
Поддерживается в версиях 2.0, 4.0, портативное
Поддерживается в версиях 2, 3