解决格式化double小数点变成逗号问题
解决格式化double小数点变成逗号问题
数字格式化
【解决格式化double小数点变成逗号问题】我们通过下面的方法来对数字进行格式化,获取小数点后三位的小数显示,但是当我们将系统语言设置为一些奇奇怪怪的国家的时候(比如南美),我们就会惊奇的发现数字显示中小数点变成了逗号:
NumberFormat format= NumberFormat.getInstance();
format.setMaximumFractionDigits(3);
format.setMinimumFractionDigits(3);
double x=15.4424;
String formatX = format.format(x);
如果我们正好需要通过这些数字字符串来获取对应的数字的话,一般的
Double.valueOf(formatX)
就会报错了,要取得对应的数字需要如下操作:
try {
Number num = format.parse(formatX);
} catch (ParseException e) {
e.printStackTrace();
}
设置格式化统一语言
另一种办法是通过设置语言,来强制不按照系统语言显示:
NumberFormat format= NumberFormat.getInstance(Locale.ENGLISH);
format.setMaximumFractionDigits(3);
format.setMinimumFractionDigits(3);
double x=15.4424;
String formatX = format.format(x);
工作中遇到,特此记录一下;
推荐阅读
- parallels|parallels desktop 解决网络初始化失败问题
- 考研英语阅读终极解决方案——阅读理解如何巧拿高分
- MybatisPlus|MybatisPlus LambdaQueryWrapper使用int默认值的坑及解决
- SpringBoot调用公共模块的自定义注解失效的解决
- 解决SpringBoot引用别的模块无法注入的问题
- Spark|Spark 数据倾斜及其解决方案
- 解决SyntaxError:|解决SyntaxError: invalid syntax
- Spectrum|Spectrum 区块偶尔停止同步问题排查与解决笔记
- 一劳永逸地解决词汇量不够的问题
- Hexo代码块前后空白行问题