Delphi - 如何使用前导零格式化实数?

时间:2016-10-25 21:43:04

标签: delphi formatting real-number

我需要在小数点之前的整数部分中使用前导零格式化实数。我知道如何使用整数来实现这一点,但实际的语法让我感到厌烦。

Number  := 1.234 ;
SNumber := Format ('%2.3f', [Number]) ;

这会SNumber = ' 1.234',但我想要'01.234'Number始终为0..99.999

2 个答案:

答案 0 :(得分:8)

使用SysUtils.FormatFloat

SNumber := FormatFloat('0#.###',Number); 

将获得01.234

六个占位符和一个前导零意味着添加前导零。

答案 1 :(得分:6)

您想要的字符串宽度为6而不是2.此外,您要将填充空格替换为“0”。

SNumber := StringReplace(Format('%6.3f', [Number]), ' ', '0', [rfReplaceAll]) ;