Java 将Unix纪元后的时间戳转换为秒
如何将Unix时代以来的时间戳转换为秒? 我只是将时间戳转换为UTC时间戳。现在我想把这个时间戳转换成秒Java 将Unix纪元后的时间戳转换为秒,java,timestamp,Java,Timestamp,如何将Unix时代以来的时间戳转换为秒? 我只是将时间戳转换为UTC时间戳。现在我想把这个时间戳转换成秒 Calendar currenttime = Calendar.getInstance(); System.out.println("current: "+currenttime.getTime()); //TIMESTAMP UTC/GMT TimeZone z = currenttime.getTimeZone(); int offset = z.getRawO
Calendar currenttime = Calendar.getInstance();
System.out.println("current: "+currenttime.getTime());
//TIMESTAMP UTC/GMT
TimeZone z = currenttime.getTimeZone();
int offset = z.getRawOffset();
if(z.inDaylightTime(new Date())){
offset = offset + z.getDSTSavings();
}
int offsetHrs = offset / 1000 / 60 / 60;
int offsetMins = offset / 1000 / 60 % 60;
currenttime.add(Calendar.HOUR_OF_DAY, (-offsetHrs));
currenttime.add(Calendar.MINUTE, (-offsetMins));
System.out.println("GMT CURRENT TIME: "+currenttime);
只需将Java毫秒除以1000即可参见 它表示返回此日期对象表示的自1970年1月1日00:00:00 GMT以来的毫秒数 按照你的代码
currenttime.getTime().getTime() / 1000
Calendar currenttime = Calendar.getInstance();
System.out.println("current: "+currenttime.getTime());
//TIMESTAMP UTC/GMT
TimeZone z = currenttime.getTimeZone();
int offset = z.getRawOffset();
if(z.inDaylightTime(new Date())){
offset = offset + z.getDSTSavings();
}
int offsetHrs = offset / 1000 / 60 / 60;
int offsetMins = offset / 1000 / 60 % 60;
currenttime.add(Calendar.HOUR_OF_DAY, (-offsetHrs));
currenttime.add(Calendar.MINUTE, (-offsetMins));
System.out.println("GMT CURRENT TIME: "+currenttime);
加上
System.out.println("This is : " + currenttime.getTime().getTime() / 1000 + " seconds");
你能再详细解释一下吗?谢谢你的回复。我尝试了这个方法,但它显示的错误类似于“运算符/未定义参数类型Date,int”。很抱歉,agn曾经出现过一次,但它仍然不能正常工作,现在它说“getTime()方法未定义类型GetCurrentTimeStamp”,在这种情况下,您的代码与上面的代码不匹配,因为上面使用的是日历对象作为currenttime。看见