5

Java 提供了一种根据给定语言环境使用主要符号格式化货币的好方法。例如,如果给定的货币是美元,那么您可以分别为美国和英国地区设置$0.35或。USD0.35这真的很好。

然而,在某些情况下,需要用另一种格式设置货币金额,我想说的是使用次要货币符号的更用户友好的样式。例如,35¢或者35c代替上面的例子。维基百科还说

从 1 美分到 99 美分的美分金额可以表示为一位或两位数字,后跟适当的缩写(2¢、5¢、75¢、99¢)

但是,我找不到使用 JDK 以这种方式格式化金额的任何方法。我已经尝试过使用DecimalFormatSymbols,但是这只允许配置主要货币符号,所以DecimalFormat仍然使用原始格式,给出类似的东西¢35是不好的。此外,用于修复订单的自定义格式字符串可能不是与区域设置/语言/国家/地区无关的(中间空格?前缀或后缀表示法?)。Joda Money及其MoneyFormatter似乎也缺少此功能。

有没有一种使用次要货币符号来格式化金额的好方法?提前致谢。

PS我不确定“主要”和“次要”这两个词是否适合这里。

4

1 回答 1

0

老实说,如果你真的需要次要货币,我认为最好的办法就是自己将信息解析为字符串。如果需要,您甚至可以使用不同的方法来输出字符串或任何您想要的东西来创建自己的货币类!您将不得不评估您的情况并确定它是否真的值得自定义输出。:)

于 2014-01-06T12:52:15.700 回答