如何转换为格林尼治标准时间
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何转换为格林尼治标准时间相关的知识,希望对你有一定的参考价值。
我有这样的字符串日期
2020-05-19 10:46:09 this is Asia/Jakarta time
我想转换成格林尼治标准时间,在这里输入我的代码
String created = New_tradingHistory_trade.getCreated_at();
Date date1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(created);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
String CreatedGMT = sdf.format(date1);
System.out.print(CreatedGMT);
我总是喜欢2020-05-19 10:46:09 2020-05-19 10:46:09我的问题是如何将我的日期转换为格林尼治标准时间?
答案
您应该使用java-8 date time api,并停止使用旧版Date和SimpleDateFormat
- 您输入的字符串位于本地日期时间
- 因此使用LocalDateTime将其解析为DateTimeFormatter
String input = "2020-05-19 10:46:09";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime localDateTime = LocalDateTime.parse(input,formatter);
ZonedDateTime zoneDateTime = localDateTime.atZone(ZoneId.of("Asia/Jakarta"));
System.out.println(zoneDateTime);
ZonedDateTime gmtDateTime = zoneDateTime.withZoneSameInstant(ZoneOffset.UTC);
System.out.println(gmtDateTime);
以上是关于如何转换为格林尼治标准时间的主要内容,如果未能解决你的问题,请参考以下文章