【发布时间】:2011-02-15 12:25:02
【问题描述】:
在法国和其他国家/地区,货币符号位于金额之后,而在其他国家/地区,货币符号位于金额之前,此外,小数点分隔符是逗号而不是点(£0.00 与 0,00 €)。
如果我在我的 Android 设备上使用以下 Java 代码(从内存中,可能无法编译),我可以得到一个格式正确的 NumberFormat:
NumberFormat format = NumberFormat.getCurrencyInstance(Currency.get(Locale.FRANCE));
此NumberFormat 格式化为正确的小数位数(在上面的示例中为两位)。
我想将金融应用的格式设置为小数点后 10 位,同时保持小数点分隔符和“符号侧”正确。
我可以很高兴地构建自己的格式表达式 - 问题是找出特定 Locale 或 Country 的信息。有没有办法在运行时从 Java/Dalvik 虚拟机中找出这一点,还是我只需要硬编码?
硬编码这不是一个真正的问题,因为我只需要担心大约 20 种货币,但显然如果它可以导出,那就更容易了 :)
【问题讨论】:
标签: java android localization locale