在我的Eclipse上,双分隔符使用逗号而不是点,我想将其更改为逗号,但我不确定如何。代码本身如下:
double latitudeBerlin = 52.51217;
double longitudeBerlin = 13.42106;
String policyBerlin = String.format("a:%f:%f:22:1", latitudeBerlin, longitudeBerlin);
System.out.println(policyBerlin);
它返回:52,512170:13,421060:22:1但是在其他计算机的Eclipse中它给出了:52.512170:13.421060:22:1我想这样做。我该怎么办?
答案 0 :(得分:2)
它正在使用计算机默认的Locale的十进制分隔符。这就是系统所依赖的原因。
您可以使用以下内容:
String.format(Locale.ROOT, "%.2f", someDouble);
这将确保您始终获得相同的小数分隔符。 Locale.ROOT被视为所有语言环境的基本语言环境。根区域设置语言,国家/地区和变体是空的,并使用点作为默认的十进制分隔符。
示例:
String.format(Locale.ROOT, "a:%f:%f:22:1", latitudeBerlin, longitudeBerlin);
输出:a:52.512170:13.421060:22:1
String.format(Locale.GERMAN, "a:%f:%f:22:1", latitudeBerlin, longitudeBerlin);
输出:a:52,512170:13,421060:22:1