我想正确放置 $ 符号,作为前缀或后缀,具体取决于使用MessageFormat
类的语言环境,但到目前为止没有成功。我需要本地化货币符号放置,而不是符号本身。
在我的消息中,我使用:
车费是 {0, number, currency}
我创建了一个 MessageFormat 调用实例:
MessageFormat messageFormat = new MessageFormat(msg, locale);
结果是正确放置了货币符号,但它也已根据使用的区域设置进行了更改。对于语言环境 en_us,我得到 $,对于语言环境 pl_pl,我得到 zł。
所以问题是,如何告诉MessageFormat始终使用相同的货币符号(在我的情况下为 $)但根据语言环境放置它(作为前缀或后缀)?
基于MessageFormat 手册看起来{0, number, currency}是使用NumberFormat.getCurrencyInstance(getLocale())格式化的,所以我想知道这是否可能。
预先感谢您的帮助。