Given a locale java.text.NumberFormat:
NumberFormat numberFormat = NumberFormat.getInstance();
How can I get the character used as Decimal separator (if it's a comma or a point) in that numberformat? How can I modify this property without having to use new DecimalFormat(format)?
Thanks
The helper class DecimalFomatSymbols is what you are looking for:
DecimalFormat format = (DecimalFormat) DecimalFormat.getInstance();
DecimalFormatSymbols symbols = format.getDecimalFormatSymbols();
char sep=symbols.getDecimalSeparator();
To set you symbols as needed:
//create a new instance
DecimalFormatSymbols custom=new DecimalFormatSymbols();
custom.setDecimalSeparator(',');
format.setDecimalFormatSymbols(custom);
EDIT: this answer is only valid for DecimalFormat
, and not for NumberFormat
as required in the question. Anyway, as it may help the author, I'll let it here.