需要格式化TextView的货币

时间:2013-12-13 16:50:54

标签: java android textview converter currency

我解析一个json对象并假设我有这个值1515.2777777777778我需要以这种方式解析货币:
€ 1'515,27

是否有可以直接进行转换的特殊类?或者我应该这样做:

Double number = Double.valueOf(obj.getString("price"));
DecimalFormat decimalFormat = new DecimalFormat("€ #\\'###.00");
String prezzo = decimalFormat.format(number);

但即使这样,我也不会说单撇号。

2 个答案:

答案 0 :(得分:7)

您可以使用NumberFormat.getCurrencyInstance()NumberFormat.getCurrencyInstance(Locale locale)获取可用于格式化当前值的NumberFormat实例。

答案 1 :(得分:5)

您需要的格式为€ #,###.00,表示您使用分组分隔符。

然后,您需要DecimalFormatSymbols来指定分组符号和小数符号:

DecimalFormatSymbols symbols = new DecimalFormatSymbols();
symbols.setGroupingSeparator('\'');
symbols.setDecimalSeparator(',');

DecimalFormat decimalFormat = new DecimalFormat("€ #,###.00", symbols);
String prezzo = decimalFormat.format(number);

结果€ 1'515,28