public class CurrencyFormatter extends AbstractNumberFormatter
Delegates to NumberFormat.getCurrencyInstance(Locale)
.
Configures BigDecimal parsing so there is no loss of precision.
Can apply a specified RoundingMode
to parsed values.
AbstractNumberFormatter.setLenient(boolean)
,
setRoundingMode(java.math.RoundingMode)
Constructor and Description |
---|
CurrencyFormatter() |
Modifier and Type | Method and Description |
---|---|
protected NumberFormat |
getNumberFormat(Locale locale)
Obtain a concrete NumberFormat for the specified locale.
|
BigDecimal |
parse(String text,
Locale locale)
Parse a text String to produce a T.
|
void |
setCurrency(Currency currency)
Specify the currency, if known.
|
void |
setFractionDigits(int fractionDigits)
Specify the desired number of fraction digits.
|
void |
setRoundingMode(RoundingMode roundingMode)
Specify the rounding mode to use for decimal parsing.
|
print, setLenient
public void setFractionDigits(int fractionDigits)
public void setRoundingMode(RoundingMode roundingMode)
RoundingMode.UNNECESSARY
.public void setCurrency(Currency currency)
public BigDecimal parse(String text, Locale locale) throws ParseException
Parser
parse
in interface Parser<Number>
parse
in class AbstractNumberFormatter
text
- the text stringlocale
- the current user localeParseException
- when a parse exception occurs in a java.text parsing libraryprotected NumberFormat getNumberFormat(Locale locale)
AbstractNumberFormatter
getNumberFormat
in class AbstractNumberFormatter
locale
- the current localenull
)