我刚刚用Java解决了这个问题。我正在使用物联网设备,它以纬度即(3231.5462N)和经度即(07406.6945E)的形式发送位置。我使用简单的公式对它们进行了转换,将 DD 部分用于纬度,将 DDD 用于经度,并在我的情况下应用 Double 转换,您可以应用所需的内容并将字符串转换为 Double 并在开始时自动删除 0,如我的情况,然后将其余的值除以 60 并取两者的总和。
public double[] convertLocationToLatAndLong(String latitude,String longitude){
double lat=(Double.parseDouble(latitude.substring(0, 2)))+(Double.parseDouble(latitude.substring(2, latitude.length()))/60);
double lon=(Double.parseDouble(longitude.substring(0, 3)))+(Double.parseDouble(longitude.substring(3, longitude.length()))/60);
double[] latAndLong= {lat,lon};
return latAndLong;
}