【发布时间】:2018-10-20 23:51:14
【问题描述】:
尝试将各种时间格式转换为统一格式。
一种格式是
"uuuu-MM-dd'T'HH:mm:ss-5000"
需要转换为时区格式:
"uuuu-MM-dd'T'HH:mm:ss EST"
使用以下代码,但它仅将时区指定为“-05:00”,而不是预期的“EST”。
String targetFormat = "uuuu-MM-dd'T'HH:mm:ss z";
String origFormat = "uuuu-MM-dd'T'HH:mm:ss.SSSZ";
String origStr = "2018-02-05T17:25:18.156-0500";
ZonedDateTime time = ZonedDateTime.parse(origStr, DateTimeFormatter.ofPattern(origFormat));
String targetStr = time.format(DateTimeFormatter.ofPattern(targetFormat));
上面的输出是:
2018-02-05T17:25:18 -05:00
如何得到预期:
2018-02-05T17:25:18 EST
【问题讨论】:
标签: java datetime-format java-time timezone-offset zoneddatetime