NumberFormat
Formats a number with an optional format mask
Method Signature
NumberFormat(number=[number], mask=[string], locale=[string])
Arguments
Argument
Type
Required
Description
Default
number
number
true
The number to be formatted
mask
string
false
The formatting mask to apply using the {@link java.text.DecimalFormat} patterns.
locale
string
false
An optional locale string to apply to the format
Examples
Format to 2 decimal places
<!--- 1234.00 ---><bx:output>1.234 ('__.00') -> <!--- 1.23 --->#numberFormat( 1.234, "__.00" )#<br/>
1234 ('__.00') -> #numberFormat( 1234, "__.00" )#<br/> </bx:output>
0 and 9 mask
<bx:output>
123 ('00000') -> #numberFormat( 123, "00000" )#<br/>
123 ('99999') -> #numberFormat( 123, "99999" )#<br/>
123 ('99.99999') -> #numberFormat( 123.12, "99.99999" )#<br/>
</bx:output>
_ mask
<bx:output>
123 ('_____') -> #numberFormat( 123, "_____" )#<br/>
123 ('_.___') -> #numberFormat( 123, "_.___" )#<br/>
11.10 ('__.000') -> #numberFormat( 11.10, "__.000" )#<br/>
</bx:output>
+ & - mask
<bx:output>
123 ('+') -> #numberFormat( 123, "+" )#<br/>
-123 ('-') -> #numberFormat( -123, "-" )#<br/>
</bx:output>
, comma
<bx:output>
123 (',') -> #numberFormat( 123, "," )#<br/>
123456 (',') -> #numberFormat( 123456, "," )#<br/>
</bx:output>
L,C mask
<bx:output>
1 ("L999") -> #NumberFormat( 1, "L999" )#<br/>
1 ("C000") -> #NumberFormat( 1, "C000" )#<br/>
</bx:output>
Two decimal places, decimal input
numberFormat( 1.23, "__.00" );
Result: 1.23
Two decimal places, integer input
numberFormat( 123, "__.00" );
Result: 123.00
Zero will pad zeros; nine doesn’t
num1 = NumberFormat( 123, "00000" );
num2 = NumberFormat( 123, "99999" );
writeOutput( num1 & "/" & num2 );
Result: 00123/ 123
show positive/negative sign
num1 = NumberFormat( 5, "+" );
num2 = NumberFormat( -5, "+" );
writeOutput( num1 & "/" & num2 );
Result: +5/-5
Formats to a dollar format (US)
You could use dollarFormat() or lsCurrencyFormat() instead
numberFormat( 123456789, "_$,9.99" );
Result: 1,2,3,4,5,6,7,8,9.00$
Additional Examples
dump( numberFormat( 1.234, "__.00" ) ); // 1.23
dump( numberFormat( 1234, "__.00" ) ); // 1234.00
// 0 and 9 mask
dump( numberFormat( 123, "00000" ) );
dump( numberFormat( 123, "99999" ) );
dump( numberFormat( 123.12, "99.99999" ) );
// _ mask
dump( numberFormat( 123, "_____" ) );
dump( numberFormat( 123, "_.___" ) );
dump( numberFormat( 11.10, "__.000" ) );
// + & - mask
dump( numberFormat( 123, "+" ) );
dump( numberFormat( -123, "-" ) );
// , comma
dump( numberFormat( 123, "," ) );
dump( numberFormat( 123456, "," ) );
// L,C mask
dump( NumberFormat( 1, "L999" ) );
dump( NumberFormat( 1, "C000" ) );
Related
Last updated
Was this helpful?