首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何用java查找纪元格式的GMT当前时间

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

Stack Overflow用户
提问于 2018-08-02 02:45:19
回答 2查看 5.3K关注 0票数 5

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

代码语言:javascript
复制
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数据库中使用的纪元格式。

谁能告诉我这个格式,上面的代码是正确的吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-08-02 03:22:22

为什么不使用Calendar类呢?

代码语言:javascript
复制
public long getEpochTime(){
    return Calendar.getInstance(TimeZone.getTimeZone("GMT-7")).getTime().getTime()/1000; //(  milliseconds to seconds)
}

它将返回当前日期的Epoch/Unix时间戳。

根据Harald的评论:

代码语言:javascript
复制
 public static long getEpochTime(){
    return Clock.system(TimeZone.getTimeZone("GMT-7").toZoneId() ).millis()/1000;
}
票数 3
EN

Stack Overflow用户

发布于 2018-08-02 03:41:47

下面是一个使用java.time API的解决方案

代码语言:javascript
复制
ZonedDateTime zdt = LocalDateTime.now().atZone(ZoneId.of("GMT-7"));
long millis = zdt.toInstant().toEpochMilli();
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51640313

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档