加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – DecimalFormat(),与俄罗斯计算机的问题

发布时间:2020-12-15 08:27:39 所属栏目:Java 来源:网络整理
导读:我有一个BigDecimal,我将其转换为String以对其进行一些修改. 最后,我尝试使用这部分代码将其转换回BigDecimal: DecimalFormat decimalFormat = new DecimalFormat();decimalFormat.setParseBigDecimal(true);Amt = (BigDecimal) decimalFormat.parse(amount
我有一个BigDecimal,我将其转换为String以对其进行一些修改.
最后,我尝试使用这部分代码将其转换回BigDecimal:

DecimalFormat decimalFormat = new DecimalFormat();
decimalFormat.setParseBigDecimal(true);
Amt = (BigDecimal) decimalFormat.parse(amount);

最后,我希望我的BigDecimal像这样,例如“135.40”
它有效,但在俄罗斯的电脑上,我得到“135.00”.我不明白为什么,这是一种什么样的错误?

解决方法

俄语语言环境中的小数点分隔符是,.这就是数字被截断的原因.这对俄语语言环境无效.

decimalFormat.parse(“135,40”)应该为您提供所需的bigdecimal.

如果要使用.解析数字,请更改DecimalFormat的语言环境:

NumberFormat formatter = NumberFormat.getNumberInstance(Locale.US);
DecimalFormat decimalFormat = (DecimalFormat)formatter;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读