共用方式為


Core.Printf 模組 (F#)

數字和其他資料型別的可延伸 printf 樣式格式。

**命名空間/模組路徑:**Microsoft.FSharp.Core

組件:FSharp.Core (在 FSharp.Core.dll 中)

module Printf

備註

格式規格是具有 % 標記的字串,這個標記表示格式預留位置。 格式預留位置由 %[flags][width][.precision][type] 組成,其中型別的解譯方式如下表:

型別

描述

%b

格式化為 true 或 false 的 bool。

%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 是確切的三個十進位數字,而正負號是 + 或 -。

%f

格式化形式為 [-]dddd.dddd 的帶正負號值,其中 dddd 是一個或多個十進位數字。 小數點前面的位數取決於數字的大小,小數點後面的位數則取決於要求的精確度。

%g, %G

格式化以 f 或 e 格式列印的帶正負號值,就看哪種格式對所指定值和精確度最為精簡。

%M

格式化 Decimal 值。

%O

格式化透過 Boxing 物件並使用其 ToString 方法列印的任何值。

%A

格式化以預設配置設定列印的任何值。

%a

一般格式規範,需要兩個引數。 第一個引數是接受兩個引數的函式:第一個是所指定格式函式之適當型別的內容參數 (例如 TextWriter),第二個則是要列印的值,以及任一輸出或傳回適當文字。

第二個引數是要列印的特殊值。

%t

一般格式規範,需要一個引數:接受所指定格式函式之適當型別的內容參數 (TextWriter),以及任一輸出,或傳回適當文字。 基本整數型別是 byte、sbyte、int16、uint16、int32、uint32、int64、uint64、nativeint 和 unativeint。 基本浮點數型別是 float 和 float32。

選擇性的 <寬度> 是整數,指出結果的最小寬度。 例如,%6d 會列印整數,而前面會加上空格,至少填滿 6 個字元。 如果寬度是 *,則會採用額外的整數引數,以指定對應的寬度。

下表說明有效的旗標。

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

列印至字串緩衝區,並且引發具有指定之結果的例外狀況。 協助者列印程式 (Helper Printer) 必須傳回字串。

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

使用內部字串緩衝區列印至字串,並且以字串傳回結果。 協助者列印程式 (Helper Printer) 必須傳回字串。

平台

Windows 8 中, Windows 7, Windows Server 2012 上, Windows Server 2008 R2

版本資訊

F# 核心程式庫版本

支援版本:2.0, 4.0,可攜式執行檔 (PE)。

支援版本:2、3

請參閱

參考

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