我是Android开发的新手,我被困在一个地方。我想设置货币格式,我要设置为不带小数位和逗号。
示例:现在它显示为23000.00
。但是我想要像23,000
这样的货币;我该怎么办?
我尝试了格式化程序类,但这对我没有帮助。
这是现在的设置。
public class CurrencyFormatter {
public static String setsymbol(BigDecimal data, String currency_symbol)
{
NumberFormat format = NumberFormat.getCurrencyInstance(Locale.ENGLISH);
format.setCurrency(Currency.getInstance(currency_symbol));
String result=data+" "+" دينار";
return result;
}
}
我希望输出为(阿拉伯文字)23,000,而不是(阿拉伯语测试)23000.00
答案 0 :(得分:2)
基本上,您需要一个货币格式化程序对象。
NumberFormat currencyFormatter = NumberFormat.getCurrencyInstance(currentLocale);
之后,您可以格式化一些金额:
Double currencyAmount = new Double(23000.00);
String formattedOutput = currencyFormatter.format(currencyAmount);
Oracle参考文档https://docs.oracle.com/javase/tutorial/i18n/format/numberFormat.html
上有更多选项和解释。答案 1 :(得分:0)
检查此
NumberFormat format = NumberFormat.getCurrencyInstance(Locale.getDefault());
format.setCurrency(Currency.getInstance("USA"));
String result = format.format(1234567.89);
这是美国的格式集,您可以使用国家/地区代码更改
答案 2 :(得分:0)
尝试一下,它将以这种格式显示23,000,不带小数点,数字中将显示千位分隔符。
String result = null;
try {
// The comma in the format specifier does the trick
result = String.format("%,d", Long.parseLong(data)); // use this result variable where you want to use.
result = result + " " + " دينار"; // to append arabic text, do as you were doing before.
} catch (NumberFormatException e) {
}