我有一张每种可用货币的3-alpha货币代码表,例如:USD
,JPY
,EUR
等。
但是,当大多数人只显示货币符号($
,¥
,€
等)时,在网页上显示3-alpha代码有点啰嗦。
我无法找到一个免费的Java库来将3-alpha货币代码转换为相应的货币符号? Java Locale
功能有限且繁琐。
所以我决定手动将新列添加到现有表中,并自行添加相应的货币符号。
但是,我不确定在表格中表示它们的格式是什么,以便它们可以在JSP页面上轻松输出?我应该复制粘贴维基百科的符号吗?或者,如果我在某处获得符号的Unicode值,是否可以轻松地将Unicode值转换为符号?我之前没有使用过Unicode。
答案 0 :(得分:2)
您是否在Currency as per javadocs上尝试了getSymbol?
为什么这很麻烦?
答案 1 :(得分:1)
答案 2 :(得分:0)
也许您可以在语言文件中使用货币符号。
更新:删除了带有db
的文本部分答案 3 :(得分:0)
如果您选择创建从货币缩写到符号的查找表,最好的选择是使用HTML实体。有两种变体,你可能想要同时使用它们。
首先,对于普通货币,有明确的实体,例如€
。你会找到一个表格here(某些符号将出现在“拉丁语1”页面中,其他符号将出现在“其他特殊字符”页面中。)
其次,对于非常见货币,您应该使用Unicode转义。一般形式为&#xnumber;
,其中number
是十六进制Unicode代码点值。有一个currency symbols块,尽管您想要的符号可能包含在另一个代码块中。查找代码块的起点是here。
不要简单地粘贴来自维基百科的符号,除非您了解编码的工作原理,以及(1)您的文件实际使用的编码方式,以及(2)您的网络服务器声称的编码方式
答案 4 :(得分:-1)
您需要查看NumberFormat课程。这将是特定于语言环境的,并且能够为您提供正确的编号。这是一个例子。
NumberFormat us = NumberFormat.getCurrencyInstance(Locale.US);
String usFormat = us.format(56.45);
System.out.println(usFormat);
NumberFormat uk = NumberFormat.getCurrencyInstance(Locale.UK);
String ukFormat = uk.format(56.45);
System.out.println(ukFormat);
您的输出将如下所示
$56.45
£56.45