我在用NumberFormat.getCurrencyInstance(myLocale)
获取我给定的区域设置的自定义货币格式。但是,这始终包含我不想要的货币符号,我只想为给定的区域设置提供正确的货币数字格式,而无需货币符号。
Doing a format.setCurrencySymbol(null)
抛出异常..
以下作品。它有点难看,但它履行了合同:
NumberFormat nf = NumberFormat.getCurrencyInstance();
DecimalFormatSymbols decimalFormatSymbols = ((DecimalFormat) nf).getDecimalFormatSymbols();
decimalFormatSymbols.setCurrencySymbol("");
((DecimalFormat) nf).setDecimalFormatSymbols(decimalFormatSymbols);
System.out.println(nf.format(12345.124).trim());
您还可以从货币格式获取模式,删除货币符号,然后从新模式重建新格式:
NumberFormat nf = NumberFormat.getCurrencyInstance();
String pattern = ((DecimalFormat) nf).toPattern();
String newPattern = pattern.replace("\u00A4", "").trim();
NumberFormat newFormat = new DecimalFormat(newPattern);
System.out.println(newFormat.format(12345.124));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)