以下是一些浮动值:
5.3
23.67
0.23
我希望他们成为
05.30
23.67
00.23
使用String(format: "%.2f", floatVar)
可以在小数点后面加2位,但不能在它之前加零。
我还尝试String(format: "%04.2f", floatVar)
作为建议here,但它只显示%.2f
在Swift标准库中是否有一种干净的方法?
答案 0 :(得分:17)
如果你想要一个快速而肮脏的解决方案:
String(format: "%05.2f", floatChar)
来自this documentation:0
表示用前导零填充它。 5
是最小宽度,包括点字符。
更长的答案是某些语言环境使用逗号作为小数分隔符。如果要匹配用户的区域设置,请使用NumberFormatter
:
let formatter = NumberFormatter()
formatter.minimumFractionDigits = 2
formatter.maximumFractionDigits = 2
formatter.minimumIntegerDigits = 2
formatter.string(from: NSNumber(value: floatChar))!
答案 1 :(得分:0)
或者我可以尝试更强大的NumberFormatter
apilet numberFormatter = NumberFormatter()
// more settings
numberFormatter.minimumIntegerDigits = 2