Core.Printf 模块 (F#)

针对数字及其他数据类型的可扩展 printf 样式格式设置。

命名空间/模块路径: Microsoft.FSharp.Core

程序集:FSharp.Core(在 FSharp.Core.dll 中)

module Printf

备注

格式规范是一些带有 % 标记并指示格式占位符的字符串。 格式占位符的构成方式为 %[flags][width][.precision][type],其中的 type 按下表中的方式解释:

类型

说明

%b

将 bool 的格式设置为 true 或 false。

%c

格式化字符。

%s

将 string 的格式设置为字符串内容的格式,而不解释任何转义字符。

%d, %i

将任何基本整数类型的格式设置为十进制整数(如果基本整数类型是带符号的,则十进制整数带符号)。

%u

将任何基本整数类型的格式设置为无符号的十进制整数。

%x

将任何基本整数类型的格式设置为无符号的十六进制整数(使用从 a 到 f 的小写字母)。

%X

将任何基本整数类型的格式设置为无符号的十六进制整数(使用从 A 到 F 的大写字母)。

%o

将任何基本整数类型的格式设置为无符号的八进制整数。

%e, %E, %f, %F, %g, %G

使用 C 样式浮点格式规范设置任何基本浮点类型(float 和 float32)的格式。

%e, %E

设置 [-]d.dddde[sign]ddd 格式的有符号值的格式,其中 d 为单个十进制数字,dddd 为一个或多个十进制数字,ddd 恰好为三个十进制数字,sign 为 + 或 -。

%f

设置 [-]dddd.dddd 格式的有符号值的格式,其中 dddd 为一个或多个十进制数字。 小数点前的位数取决于数字的量级,而小数点后的位数取决于请求的精度。

%g, %G

设置以 f 或 e 格式(视哪种格式对于给定的值和精度更为简洁而定)打印的有符号值的格式。

%M

设置 Decimal 值的格式。

%O

设置通过将对象装箱并使用其 ToString 方法来打印的任何值的格式。

%A

设置使用默认布局设置打印的任何值的格式。

%a

一个常规格式说明符,它需要两个参数。 第一个实参为一个函数,它接受两个实参并输出或返回适当的文本:第一个为给定的格式设置函数(例如,TextWriter)的适当类型的上下文形参;第二个为要打印的值。

第二个实参为要打印的特定值。

%t

一个常规格式说明符,它需要一个实参,该实参应为一个函数,接受给定的格式设置函数(例如,TextWriter)的适当类型的上下文形参,并输出或返回适当的文本。 基本整数类型为 byte、sbyte、int16、uint16、int32、uint32、int64、uint64、nativeint 和 unativeint。 基本浮点类型为 float 和 float32。

可选的 width 为一个指示结果的最小宽度的整数。 例如,%6d 打印一个整数,并在前面添加空格作为前缀以满足至少 6 个字符的要求。 如果 width 为 *,则将采用额外的整数参数指定相应的宽度。

下表中介绍了有效标志。

0

指定添加零(而不是空格)以构成所需的宽度。

-

指定按指定的宽度将结果左对齐。

+

指定在数字为正数的情况下添加 + 字符(以与负数前的 - 号相对应)。

' ' (空格)

指定在数字为正数的情况下添加一个额外的空格(以与负数前的 - 号相对应)。

#

无效。

类型缩写

类型

说明

类型 BuilderFormat<'T,'Result>

表示与写入 StringBuilder 关联的静态分析的格式。 第一个类型形参指示格式操作的实参,最后一个类型形参指示总体返回类型。

类型 BuilderFormat<'T>

表示与写入 StringBuilder 关联的静态分析的格式。 类型形参指示格式操作的实参和返回类型。

类型 StringFormat<'T,'Result>

表示格式设置生成字符串时的静态分析的格式。 第一个类型形参指示格式操作的实参,最后一个类型形参指示总体返回类型。

类型 StringFormat<'T>

表示格式设置生成字符串时的静态分析的格式。 类型形参指示格式操作的实参和返回类型。

类型 TextWriterFormat<'T,'Result>

表示与写入 TextWriter 关联的静态分析的格式。 第一个类型形参指示格式操作的实参,最后一个类型形参指示总体返回类型。

类型 TextWriterFormat<'T>

表示与写入 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

请参见

参考

Microsoft.FSharp.Core 命名空间 (F#)