将String转换为ZonedDateTime

时间:2018-04-08 09:08:53

标签: java timestamp-with-timezone datetime-parsing

我尝试将字符串转换为ZonedDateTime。 这是我的代码:

String startTime = "Wed Mar 21 2018 08:00:00 GMT 0330 (IRST)";
String endTime = "Fri Mar 23 2018 08:00:00 GMT 0430 (IRDT)";
ZonedDateTime startTimeDate = ZonedDateTime.parse(startTime);
ZonedDateTime endTimeDate = ZonedDateTime.parse(endTime);

和错误:

java.time.format.DateTimeParseException: Text 'Wed Mar 21 2018 08:00:00 GMT 0330 (IRST)' could not be parsed at index 0

1 个答案:

答案 0 :(得分:2)

您使用的是parse method的默认版本,它的默认格式为2007-12-03T10:15:30+01:00[Europe/Paris]

您需要传递正确的DateTimeFormatter。对我而言,RFC_1123_DATE_TIME似乎与您的格式最接近,但它不匹配,因此您需要创建自己的格式。