Java货币API中缺少某些货币符号

Ran*_*yer 5 java currency

我正在用Java编写一些货币转换代码,并使用此API构建货币的内部查找表

final Locale[] locales = Locale.getAvailableLocales();
for (final Locale locale : locales) {
   final Currency currency = Currency.getInstance(locale);
   String sign = currency.getSymbol(locale)
   String code = currency.getCurrencyCode()
     /* do something with them */
}
Run Code Online (Sandbox Code Playgroud)

到目前为止,我有两个观察结果.

  1. 此列表不会在本机脚本https://en.wikipedia.org/wiki/Indian_rupee_sign中返回卢比标志.它返回Rs.代替

  2. 同样对于俄罗斯卢布,它返回руб而不是原生脚本中的卢布符号https://en.wikipedia.org/wiki/Ruble_sign

许多国际货币都有拉丁文和原生文字的标志.Java在返回的内容似乎并不一致.我遇到了限制或我的API使用不正确吗?

谢谢!

Dav*_*jan 6

我测试了你的印度卢比标志的代码,它似乎工作得很好.该符号可用于区域设置hi_IN

hi_IN语言环境的卢比符号

但是en_IN,'Rs'符号可用

en_IN语言环境的Rs符号

确保使用正确的区域设置.:)