Format a float according to a certain mask.
Source position: sysstrh.inc line 241
function FormatFloat( |
const Format: string; |
Value: Extended |
):string; |
const Format: string; |
Value: Extended; |
const FormatSettings: TFormatSettings |
):string; |
FormatFloat formats the floating-point value given by Value using the format specifications in Format. The format specifier can give format specifications for positive, negative or zero values (separated by a semicolon). Note that the minus sign must be explicitly specified in the section for negative numbers:
Writeln(FormatFloat('#0.00;#0.00-;0",FF));
If the format specifier is empty or the value needs more than 18 digits to be correctly represented, the result is formatted with a call to FloatToStrF with the ffGeneral format option.
The following format specifiers are supported:
If an error occurs, an exception is raised.
|
Convert a float value to a string using a fixed format. |
Program Example89; { This program demonstrates the FormatFloat function } Uses sysutils; Const NrFormat=9; FormatStrings : Array[1..NrFormat] of string = ( '', '0', '0.00', '#.##', '#,##0.00', '#,##0.00;(#,##0.00)', '#,##0.00;;Zero', '0.000E+00', '#.###E-0'); NrValue = 5; FormatValues : Array[1..NrValue] of Double = (1234,-1234,0.5,0,-0.5); Width = 12; FWidth = 20; Var I,J : Integer; S : String; begin Write('Format':FWidth); or:=1 to NrValue do Write(FormatValues[i]:Width:2); Writeln; or:=1 to NrFormat do begin Write(FormatStrings[i]:FWidth); or:=1 to NrValue do begin S:=FormatFloat(FormatStrings[I],FormatValues[j]); Write(S:Width); end; Writeln; end; End.