使用GPS(LocationManager)如何获取当前时间?

时间:2011-01-08 13:20:07

标签: java android

我正在开发一个GPS应用程序。这将每隔一小时将位置数据发送到服务器。

在此我使用以下代码:

location.getLatitude();
location.getLongitude();
location.getTime();

使用此代码我正确地获得纬度和经度以及时间,但我得到的是13位数而不是时间。我对此做了一些研究,我发现这是当前时间的秒数。

所以现在我需要将这个13位数转换成特定的格式。

3 个答案:

答案 0 :(得分:12)

Location#getTime()返回“此修复的UTC时间,自1970年1月1日起以毫秒为单位。”

这与java.util.Date#getTime()完全相同。我不清楚你想用这个时间数据做什么,但是如果你想将Location的时间转换为java.util.Date,你可以这样做:

long time = location.getTime();
Date date = new Date(time);

现在使用起来更容易一些。如果您要创建该日期的特定字符串输出格式,请使用SimpleDateFormat

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String text = sdf.format(date);
System.out.println(text); // prints something like 2011-01-08 13:35:48

那就是说,如果您想要做的就是获取当前时间(这听起来就像您尝试的那样),您根本不需要Location

Date now = new Date();

就是这样!


这有帮助吗?如果没有,你能澄清一下你想要做什么吗?

答案 1 :(得分:2)

 Date date = new Date(location.getTime());

 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

 String myDate= sdf.format(date);



 System.out.println(myDate)

答案 2 :(得分:1)

libgstreamer-plugins-base1.0-dev