簡體   English   中英

F# - printfn Guid

[英]F# - printfn Guid

我在F#中有以下打印示例

for row in data.Rows do 
     printfn "Example: (%s)" row.A

但是我收到了這個錯誤

Script1.fsx(15,67):錯誤FS0001:此表達式應具有類型字符串,但此處具有類型Guid

我沒有找到任何打印Guid類型的例子。 我嘗試將ToString()方法應用於row.A但它也不能正常工作

這里有兩個選項:

for row in data.Rows do 
     printfn "Example: (%s)" (row.A.ToString())

要么

for row in data.Rows do 
     printfn "Example: (%A)" row.A

這里%A可用於任何類型,編譯器將自動為您打印

您可以將%A用於Guid,如下所示:

printfn "Example: (%A)" row.A

使用%s ,類型必須是字符串。

MSDN文檔提供了有關要使用的格式類型及其行為方式的詳細信息。

除了已經給出的答案之外,值得注意的是Guid還支持ToString的重載,讓您可以選擇控制GUID字符串的格式。

例如,您可以像這樣寫出來:

printfn "Example: (%s)" (row.A.ToString "n")

如果你想省略連字符( Example: (78e6fb89dc5045988d445c4d8aef4e28) )。

或者你可以使用stringf ,如果你想要一個管道而不是括號的替代品:

row.A |> stringf "n" |> printfn "Example: (%s)"

或者如果您不需要格式化選項:

row.A |> string |> printfn "Example: (%s)"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM