我最近因为写一些东西而变得自满,比如
printf "\n%f\n" 3.2
代替
printf "%s%f%s" Environment.NewLine 3.2 Environment.NewLine
我的问题是:有没有办法像第一个版本一样编写安全的第二个版本(即格式字符串中的一个特殊字符,它插入
Environment.Newline
以便格式字符串中的每个换行符实例的参数不是必需的) ?
最佳答案
如何使用 kprintf 进行双 channel ,用 NewLine 替换\n:
let nprintf fmt = Printf.kprintf (fun s -> s.Replace("\n", Environment.NewLine) |> printf "%s") fmt
然后在
nprintf "\n%f\n" 3.2
所有\n 都被 NewLine 替换。
关于f# - 换行符和格式化程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5087029/