gpt4 book ai didi

java - Android 位置字符串问题

转载 作者:搜寻专家 更新时间:2023-11-01 08:06:28 25 4
gpt4 key购买 nike

这是我使用字符串放置位置的代码:

public static String locationStringFromLocation(final Location location) {
return String.format("%.3f %.3f", location.getLatitude(), location.getLongitude());
}

从其他一些设备上,我不时得到:-7.2900002123788E-4 7.270000060088933E-4 作为位置字符串而不是 -7.290 7.270 例如。

  • 有人知道这件事吗?
  • 如何改进我的代码?

编辑

更新代码。这会解决问题吗?

DecimalFormat decimalFormat = new DecimalFormat("#.###");
if (location != null) {
final String latitude = decimalFormat.format(Float.valueOf(Location.convert(location.getLatitude(), Location.FORMAT_DEGREES)));
final String longitude = decimalFormat.format(Float.valueOf(Location.convert(location.getLongitude(), Location.FORMAT_DEGREES)));
return latitude + " " + longitude;
}
return decimalFormat.format(0.0F) + " " + decimalFormat.format(0.0F);

最佳答案

您可以使用 Location 类中的 public static String convert (double coordinate, int outputType)。 outputType 可以是 FORMAT_DEGREESFORMAT_MINUTESFORMAT_SECONDS 之一。

public static String locationStringFromLocation(final Location location) {
return Location.convert(location.getLatitude(), Location.FORMAT_DEGREES) + " " + Location.convert(location.getLongitude(), Location.FORMAT_DEGREES);
}

关于java - Android 位置字符串问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13818143/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com