Недавно я перешел на Java 8, надеюсь, более легко справиться с местным и зонированным временем.
Тем не менее, я сталкиваюсь, на мой взгляд, с простой проблемой при анализе простой даты.
public static ZonedDateTime convertirAFecha(String fecha) throws Exception {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(
ConstantesFechas.FORMATO_DIA).withZone(
obtenerZonaHorariaServidor());
ZonedDateTime resultado = ZonedDateTime.parse(fecha, formatter);
return resultado;
}
В моем случае:
- fecha is '15/06/2014 '
- ConstantesFechas.FORMATO_DIA - это 'dd/MM/yyyy'
- obtenerZonaHorariaServidor возвращает ZoneId.systemDefault()
Итак, это простой пример. Однако синтаксический разбор порождает это исключение:
java.time.format.DateTimeParseException: Text '15/06/2014' could not be parsed: Unable to obtain ZonedDateTime from TemporalAccessor: {},ISO resolved to 2014-06-15 of type java.time.format.Parsed
Какие-нибудь советы? Я пробовал разные комбинации разбора и использования TemporalAccesor, но пока не повезло.
С наилучшими пожеланиями