【发布时间】:2018-05-02 20:11:59
【问题描述】:
我想将 24 小时字符串 ex: 13:05 2017-03-19 转换为 ZonedDateTime。目前我正在尝试这样做:
DateTimeFormatter zoneParser = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
this.startZoneTime = LocalDateTime.parse(date + " " +start, zoneParser).atZone(ZoneId.systemDefault());
this.endZoneTime = LocalDateTime.parse(date + " " + end, zoneParser).atZone(ZoneId.systemDefault());
但是得到一个解析异常。
【问题讨论】:
-
1.该模式对您的示例没有意义/ 2.什么是“开始”,“结束”?
-
为了清楚和简单起见,我将分别解析三个字符串
date、start和end,然后组合成两个LocalDateTime对象。当然,最后转换为ZonedDateTime。 -
正如@azro 可能暗示的那样,这并不清楚。如果您愿意create a Minimal, Complete, and Verifiable example,我们可以更好、更准确地帮助您解决问题所在。还记得包含堆栈跟踪。
-
我很抱歉缺少信息,我完全匆忙发布这个问题,忘记更改变量名称,以便它们更好地代表我想要实现的目标。 'start' 和 'end' 是开始时间和结束时间。