我怎样才能获得像这样的度数符号的经度和纬度
40°42′51″
lattude = Location.convert(location.getLatitude(), Location.FORMAT_DEGREES);
txt5.setText(lattude);
这是我的代码,但它显示了这个:40.4251
答案 0 :(得分:0)
Location.convert
根据{{3}}返回包含双部分的字符串,因此最后没有度数符号。
如果你想进一步格式化你可以通过使用多重,模数和(int)
转换来分割你的双倍(以获得你的分割双倍的整数部分)并为你的分裂分配正确的单位获得。这是一个混乱的快速草案:
double test = Double.parseDouble("40.4251d");
System.out.print((int)test + "°");
System.out.print(((int)(test * 100) % 100) + "'" );
System.out.print(((int)(test * 10000) % 100) + "''" );
Output: 40°42'51''
您还可以使用标记Location.FORMAT_DEGREES,Location.FORMAT_MINUTES和Location.FORMAT_SECONDS
,但您仍然必须摆脱给定转化结果中的格式分隔符。
希望这有帮助!