я есть строка со временем в следующем формате:JodaTime - как разобрать временную строку ISO 8601 в DateTime?
2016-01-07T08:00:00+00:00
Когда я пытаюсь разобрать строку, используя следующий метод.
public static DateTime getDateTimeObject(String dateTime) {
//DateTimeFormatter dateTimeFormatter = DateTimeFormat.forPattern(PATTERN);
//DateTime dateTimeObj = dateTimeFormatter.parseDateTime(dateTime);
Logger.d(dateTime);
DateTime dateTimeObj = null;
try {
dateTimeObj = ISODateTimeFormat.dateTime().parseDateTime(dateTime);
return dateTimeObj;
} catch (Exception e) {
Logger.e(e.getMessage());
}
return dateTimeObj;
}
У меня всегда есть следующее исключение.
Invalid format: "2016-01-07T08:00:00+00:00" is malformed at "+00:00"
Как я могу разобрать строку в формате ISO, чтобы получить действительный объект DateTime?
Вы попробовали 'dateTimeObj = DateTime.parse (dateTime);'? – Youngjae
FYI, проект Joda-Time находится в режиме обслуживания. Команда советует перейти на классы [java.time] (https://docs.oracle.com/javase/8/docs/api/java/time/package-summary.html), в этом случае ['OffsetDateTime'] (https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html). Пример: 'OffsetDateTime.parse (« 2016-01-07T08: 00: 00 + 00: 00 »)' –