如何使用java查找GMT的纪元格式当前时间

我写了下面正在运行的代码,并给出输出。但我不确定这是正确的。


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

Date date = new Date();

sdf.setTimeZone(TimeZone.getTimeZone("GMT-7"));

String value = sdf.format(date);

System.out.println(value);

Date date2 = sdf.parse(value);

long result = date2.getTime();

System.out.println(result);

return result;

我正在尝试的上述代码是,我只需要获取 GMT 时区的当前时间并将其转换为将在 Oracle db 中使用的纪元格式。


谁能告诉我那个格式,上面的代码是对的吗?


拉莫斯之舞
浏览 215回答 3
3回答

杨魅力

为什么不使用Calendar类?public long getEpochTime(){    return Calendar.getInstance(TimeZone.getTimeZone("GMT-7")).getTime().getTime()/1000; //(  milliseconds to seconds)}它将返回当前日期的纪元/Unix 时间戳。基于 Harald 的评论: public static long getEpochTime(){    return Clock.system(TimeZone.getTimeZone("GMT-7").toZoneId() ).millis()/1000;}

大话西游666

这是使用java.time API的解决方案ZonedDateTime zdt = LocalDateTime.now().atZone(ZoneId.of("GMT-7")); long millis = zdt.toInstant().toEpochMilli();
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java