我最近迁移到 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 是 '15/06/2014'
- ConstantesFechas.FORMATO_DIA 是 'dd/MM/yyyy'
- obtenerZonaHorariaServidor 返回 ZoneId.systemDefault()
所以,这是一个简单的例子。但是,解析会引发此异常:
java.time.format.DateTimeParseException:无法解析文本“15/06/2014”:无法从 TemporalAccessor 获取 ZonedDateTime:{},ISO 解析为 java.time.format.Parsed 类型的 2014-06-15
有小费吗?我一直在尝试解析和使用 TemporalAccesor 的不同组合,但到目前为止没有任何运气。