我正在开发一个GPS应用程序。这将每隔一小时将位置数据发送到服务器。
在此我使用以下代码:
location.getLatitude();
location.getLongitude();
location.getTime();
使用此代码我正确地获得纬度和经度以及时间,但我得到的是13位数而不是时间。我对此做了一些研究,我发现这是当前时间的秒数。
所以现在我需要将这个13位数转换成特定的格式。
答案 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