使用Java将日期转换为AEST [英] Convert date into AEST using java

查看:110
本文介绍了使用Java将日期转换为AEST的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想使用Java将以下日期转换为AEST格式.

I want to convert below date into AEST format using Java.

2018-01-08T02:10:24.000 + 0000w

2018-01-08T02:10:24.000+0000w

下面是我用来转换的代码.

Below is the code which i am using for to convert .

DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSSzzz");
ZonedDateTime zdt = ZonedDateTime.parse(
        map.get("records-LastModifiedDate").toSt‌​ring().trim()); 
System.out.println(zdt);

模式有问题吗?请提出建议.

There is something wrong with the pattern? Please suggest.

推荐答案

解析日期字符串时,必须使用格式化程序.另外,您还需要告诉它更改区域或区域偏移,以使其进入AEST/AEDT.

You have to use the formatter when parsing the date string. Also you need to tell it to change the zone or zone offset to get it into AEST/AEDT.

这可能有效:

DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSSXX"); 
ZonedDateTime zdt = OffsetDateTime.parse(input, dtf)
    .atZoneSameInstant(ZoneId.of("Australia/Sydney"));
String dateInTimeZone = zdt.format(dtf);

根据一年中的不同时间,偏移量将显示为"+1000"或"+1100".

The offset will appear as "+1000" or "+1100" depending on the time of year.

这篇关于使用Java将日期转换为AEST的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆