【问题标题】:how to get the right format for GPS data in android如何在android中获得正确的GPS数据格式
【发布时间】:2011-09-04 06:30:52
【问题描述】:

我有一个应用程序对数据库进行查询.....询问 GPS 数据(纬度和经度),然后我在地图上制作动画。

一切都像这样的预期数据

48868658

48869320

48869320 返回并在地图上显示它们,但是当光标到达这样的数字时:

48874808.0

我收到以下错误:

java.lang.NumberFormatException: 无法将 '4.88748e+07' 解析为整数

我不明白我的代码中的原因是我这样做了:

经度 = (int)Integer.parseInt(c.getString(1));

纬度 = (int)Integer.parseInt(c.getString(2));

p = new GeoPoint(纬度,经度);

我已将整个内容转换为 int....但我仍然收到导致地图停止的错误。

谁能帮帮我?

【问题讨论】:

    标签: android map gps


    【解决方案1】:

    48874808.0 是浮点数或双精度数,而 48874808 是整数。

    要获得完整的部分,您可以尝试以下操作:

    double d = Double.parse("48874808.0");
    int integral = (int) d;
    

    【讨论】:

    • 是的,但我将它转换为整数,之后我应该有 48874808 而不是 48874808.0 并且一切都应该顺利,不是吗?
    • 并非如此。据我所知,48874808.0 只能被转换为浮点数或双精度数。如果您想要整数部分,请将 48874808.0 转换为浮点数,然后将该结果转换为整数。我很快就会改变我的答案。
    • 这也应该与:48869320....如果我这样做 (int)Double.parse(48869320) 之后我应该有 48869320?????
    • 48869320 可以直接转换为整数,但是如果您想要一个通用的解决方案,您可以将所有内容转换为 double 然后再转换为整数。那会奏效的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-04-17
    • 1970-01-01
    • 2021-05-11
    • 1970-01-01
    • 2013-01-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多