将int转换为带前导零的字符串

时间:2016-11-01 14:31:07

标签: f# leading-zero padleft

我有一个整数,我想将其转换为带前导零的字符串。

所以我有1并希望将其转换为0114应变为14而不是014

我试过了:

let str = (string 1).PadLeft(2, '0') // visual studio suggested this one
let str = (string 1).PadLeft 2 '0'
let str = String.PadLeft 2 '0' (string 1)

但两种都不起作用:( 当我使用F#搜索类似的内容时,我会收到printfn的内容,但我不想打印到stdout:/

免责声明:这是我的第一个F#

1 个答案:

答案 0 :(得分:9)

您可以使用sprintf返回字符串而不是打印到stdout。以print开头的任何s函数都会返回一个字符串。

使用%0i填充零。在0i之间添加预期字符串的长度。例如,要填充四个零,您可以使用:

sprintf "%04i" 42

// returns "0042"