支持java中的新印度货币符号

支持java中的新印度货币符号,java,numbers,currency,Java,Numbers,Currency,如何使用新的印度货币符号格式化数字(₹) 使用java。如果有任何解决方法,请与我们分享。在java正确支持新字符之前,您可以使用其unicode值手动指定货币符号 印度货币符号的Unicode是U+20B9 因此,要将此字符插入java字符串,请将其指定为\u20B9,而不是默认的十进制货币值\u00A4 例如: DecimalFormat formatter = new DecimalFormat("\u20B9 000"); 不幸的是,这会将输出硬编码为始终显示卢比符号。如果需要支持多个

如何使用新的印度货币符号格式化数字(₹) 使用java。如果有任何解决方法,请与我们分享。

在java正确支持新字符之前,您可以使用其unicode值手动指定货币符号

印度货币符号的Unicode是
U+20B9

因此,要将此字符插入java字符串,请将其指定为
\u20B9
,而不是默认的十进制货币值
\u00A4

例如:

DecimalFormat formatter = new DecimalFormat("\u20B9 000");
不幸的是,这会将输出硬编码为始终显示卢比符号。如果需要支持多个地区,可以检查user.country系统属性

boolean iAmInIndia = "IN".equals(System.getProperty("user.country"));
DecimalFormat formatter = iAmInIndia ? new DecimalFormat("\u20B9 000") : new DecimalFormat("\u00A4 000");
此外,用于显示此字符串的组件必须具有包含货币符号的字体。窗口7上的Arial包含货币符号,而其他许多组件则不包含货币符号。

将此字体复制到windows字体文件夹中(在运行->键入字体中)

然后 Font ProMed_Font=新字体(“卢比福拉迪亚”,字体:普通,10); 将上述字体设置为标签

示例:label.settext(“100”+“`”)输出将是100+卢比符号


比该模式更好的选择是使用NumberFormat的currencyInstance并更新其内部DecimalFormatSymbols元数据上的货币符号。