Android 将GPS值从deg转换为dms格式

Android 将GPS值从deg转换为dms格式,android,dictionary,gps,Android,Dictionary,Gps,是否有人知道如何或拥有Android功能将GPS值从十进制转换为DMS(度-分-秒)格式?您可以手动计算 示例代码: decimal = ...; // Your given value boolean neg = decimal < 0; decimal = abs(decimal); deg = floor(decimal); // Round down minutes = floor((decimal * 60) % 60); // This

是否有人知道如何或拥有Android功能将GPS值从十进制转换为DMS(度-分-秒)格式?

您可以手动计算

示例代码:

decimal = ...;  // Your given value

boolean neg = decimal < 0;
decimal = abs(decimal);

deg = floor(decimal);                  // Round down
minutes = floor((decimal * 60) % 60);  // This is an integer in the range [0, 60)
seconds = (decimal * 3600) % 60;       // This is a decimal in the range [0, 60)

if (neg) prepend minus sign;
decimal=…;//你的给定值
布尔负=十进制<0;
十进制=绝对值(十进制);
度=地板(十进制);//四舍五入
分钟=楼层((十进制*60)%60);//这是一个范围为[0,60]的整数
秒=(十进制*3600)%60;//这是一个范围为[0,60]的十进制数
if(neg)前置减号;

看看类
android.location.location


静态方法正是您所寻找的。

几乎正确。唯一的问题是,它将为您提供南半球纬度和西半球经度的错误答案(
floor(-74.0125)
为-75,但经度为74°0′45〃W)。请参见
//假定您的给定值为非负
。但GPS坐标不能假定为非负。+1尽管我通常会使用neg标志附加N/S/E/WI,但我知道您可以自行进行修改。