Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在Android中总是用小数点而不是逗号来写数字_Java_Android - Fatal编程技术网

Java 如何在Android中总是用小数点而不是逗号来写数字

Java 如何在Android中总是用小数点而不是逗号来写数字,java,android,Java,Android,我写文件并读回。我使用逗号分隔的文件格式,以便Excel可以轻松读取文件。这对我来说很好,但我的荷兰朋友无法让程序运行。问题是,当我写出52.345时,文件中的结果是52345,当我读回它时,我得到52,然后345作为下一个字段 这不是格式化数字的问题,因为这种行为发生在许多来源,从用户输入的编辑文本,从转换为字符串的字符序列,以及从使用格式命令编写的数字。代码中有数百个实例,所以我需要一些通用的东西来覆盖所有默认行为,并将其强制到Locale.US 我需要的是一种对应用程序进行编程的方法,使平

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

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

我需要的是一种对应用程序进行编程的方法,使平板电脑在键盘、数字书写等各个方面都像Locale.US平板电脑一样。我不想改变一行代码。

您可以使用非强制性的Locale参数,明确指定为:

假设plong是double或float且不长,则长时间不需要小数点

或者,如果所有应用程序都需要此选项,则在活动的onCreate或类扩展应用程序中:

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

我认为困扰我们的代码是waypointArray[0][2]=pLong.toString();当我写出字符串时,它已经错了。请改为:
waypointArray[0][2]=string.format(Locale.US,“%f”,pLong)Locale.setDefault(Locale.US);
Configuration config = new Configuration();
config.locale = Locale.US;
getBaseContext().getResources().updateConfiguration(config,
  getBaseContext().getResources().getDisplayMetrics());