Delphi - how do you format a real number with leading zeros?

rossmcm picture rossmcm · Oct 25, 2016 · Viewed 9.5k times · Source

I need to format a real number with leading zeros in the whole number part prior to the decimal point. I know how to achieve this with integers, but the syntax for reals escapes me.

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

This gives SNumber = ' 1.234' but I want '01.234'. Number is always 0..99.999

Answer

LU RD picture LU RD · Oct 26, 2016

Using SysUtils.FormatFloat:

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

will get 01.234

Six placeholders and a leading zero means to add leading zeros.