首页 > 解决方案 > 如何以以下格式获取当前日期和时间,date = "Mon, 13 Jul 2020 14:08:30 GMT"

问题描述

需要 java 代码中的帮助以获取以下格式的当前日期和时间:

newdate = "Mon, 13 Jul 2020 14:08:30 GMT"

在此之后,我需要用较早的日期替换当前日期:

vJsonfile1.replace(earlierdate," "+ newdate);

标签: java

解决方案


您可以使用ZonedDateTimeRFC_1123 格式来获得所需的输出:

DateTimeFormatter dtf = DateTimeFormatter.RFC_1123_DATE_TIME;

ZonedDateTime zdt = ZonedDateTime.now(ZoneId.of("GMT"));

System.out.println(dtf.format(zdt));

Wed, 15 Jul 2020 19:07:37 GMT

请注意 1123_DATE_TIME 格式在北美时区中表现不佳,因此只要其 GMT 或欧洲时区也可以使用,否则以下内容也足够了:

DateTimeFormatter dtf = DateTimeFormatter.ofPattern("EEE, dd MMM yyyy HH:mm:ss z");

ZonedDateTime zdt = ZonedDateTime.now();

System.out.println(dtf.format(zdt));

Wed, 15 Jul 2020 14:13:22 CDT

它将输出当前时间及其所在时区。


推荐阅读