如何在Java中为区域设置格式化货币

时间:2011-04-19 07:46:05

标签: java internationalization

我很惊讶我发现如何做到这一点真的很麻烦。在我看来它应该非常简单。也许我在寻找错误的地方。

假设我有以下代码:

double amount = 123.45D; //yes, I know that I should be using longs
Locale uk = Locale.UK;
Locale fr = Locale.FR;
Currency euro = Currency.getInstance("EUR");

如何获取NumberFormat实例,让我打印出为Locale正确格式化的123.45值?即我分别想要英国和法国的以下内容:

€123.45
123,45 €

我不能使用NumberFormat.getCurrencyInstance(Locale),因为这会将英国格式格式化为Sterling(£)。我正在寻找的是NumberFormat.getCurrencyInstance(Locale, Currency),但这似乎并不存在。

有什么想法吗?

1 个答案:

答案 0 :(得分:4)

使用NumberFormat.setCurrency()修改通过NumberFormat获取的特定NumberFormat.getCurrencyInstance(Locale)使用的货币。

相关问题