gpt4 book ai didi

java - 将货币格式化为本地语言环境,但忽略 .00 位小数

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:54:21 25 4
gpt4 key购买 nike

我正在尝试以用户区域设置格式以数据给出的相对货币显示商品价格。

例如该商品以欧元为单位,在英国应显示为 €123.64,但在法国应显示为 123,64 €

我希望根据用户的区域设置放置货币符号和小数点分隔符。

但是,让我卡住的部分是如果该项目没有便士/美分值(value),如何去除 .00。

我试过用

NumberFormat f = NumberFormat.getInstance(loc);
if (f instanceof DecimalFormat) {
((DecimalFormat)f).setDecimalSeparatorAlwaysShown(false);
}

来自 DecimalFormat.html#setCurrency

但它没有货币符号,即使我尝试 f.setCurrency() 也是如此。

我还尝试将 getInstance 更改为 getCurrencyInstance,它现在应用货币符号,但忽略了 setDecimalSeparatorAlwaysShown(false) 部分。

我考虑过检查余数是否为 0,然后将其去除,但这需要我检查/知道小数点分隔符是什么,这虽然可能可行,但非常麻烦。

有人知道做所有这些事情的方法吗?!

最佳答案

好吧,我已经完全傻眼了,没注意到方法

setMaximumFractionDigits(int)

如果小数部分为 0,我现在将其设置为 0。

关于java - 将货币格式化为本地语言环境,但忽略 .00 位小数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29986109/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com