解决格式化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);

工作中遇到,特此记录一下;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • longaaaa =14200666; Console.WriteLine(aaaa.ToString("N0")...
    鱼落于天阅读 944评论 0 1
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,923评论 18 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,264评论 25 708
  • 回顾 上一篇我们找到camera回调的callback里面的byte[]数据被转化成二值化后的bitmap,然后将...
    秋sunshine阅读 2,503评论 1 1
  • 雨一直在下着,风依然“呼呼”地在吹着,我却一直在颤抖着! 我很喜欢雨,从未厌恶过她,她一直都是我坚强的后盾...
    默茉妃祥阅读 127评论 0 0