如何始终使用小数点而不是逗号来编写带有小数点的数字

时间:2013-12-08 20:39:07

标签: java android

我写文件并回读。我使用逗号分隔的文件格式,以便Excel可以轻松读取文件。这对我来说很好,但我的荷兰朋友无法让程序运行。问题是,当我写出52.345时,文件中的最终结果是52,345,当我读回来时,我得到52然后是345作为下一个字段。

这不是格式化数字的问题,因为这种行为发生在许多来源,用户输入的编辑文本,转换为字符串的字符序列以及使用格式命令编写的数字。代码中有数百个实例,所以我需要一些通用的东西来涵盖所有默认行为并强制它到Locale.US

我需要的是一种对应用程序进行编程的方法,这样平板电脑就可以像各种方式的Locale.US平板电脑一样,键盘,数字写入等。我不是在寻找一种方法来改变一行代码。

1 个答案:

答案 0 :(得分:2)

您可以使用String.format (String format, Object... args)非强制语言环境参数,明确指定Locale.US

假设plong是double或float而不是long,因此长时间不需要小数点。

waypointArray[0][2] = String.format(Locale.US, "%f", pLong);

或者,如果您需要为所有应用程序使用此功能,请在活动的onCreate或类扩展应用程序中使用:

Locale.setDefault(Locale.US);
Configuration config = new Configuration();
config.locale = Locale.US;
getBaseContext().getResources().updateConfiguration(config,
  getBaseContext().getResources().getDisplayMetrics());