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 |
格式化以預設配置設定列印的任何值。 使用 %+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 |
列印至字串緩衝區,並且引發具有指定之結果的例外狀況。 協助者列印程式 (Helper Printer) 必須傳回字串。 |
fprintf : TextWriter -> TextWriterFormat<'T> -> 'T |
列印至文字寫入器。 |
fprintfn : TextWriter -> TextWriterFormat<'T> -> 'T |
列印至文字寫入器,加入新行字元。 |
kbprintf : (unit -> 'Result) -> StringBuilder -> BuilderFormat<'T,'Result> -> 'T |
|
kfprintf : (unit -> 'Result) -> TextWriter -> TextWriterFormat<'T,'Result> -> 'T |
|
kprintf : (string -> 'Result) -> StringFormat<'T,'Result> -> 'T |
類似printf,但會呼叫指定的函式來產生結果。 例如,這些可讓列印在所有輸出已進入通道之後 (而非之前) 強制進行清除。 |
ksprintf : (string -> 'Result) -> StringFormat<'T,'Result> -> 'T |
|
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,可移植版
支援版本:2、3