java - date to datetime php
Cómo convertir Joda Localdate a Joda DateTime? (1)
Existen varios métodos en LocalDate
para esto, que incluyen:
-
LocalDate::toDateTimeAtCurrentTime()
-
LocalDate::toDateTimeAtStartOfDay()
-
LocalDate::toDateTime( LocalTime )
-
LocalDate::toDateTime( LocalTime , DateTimeZone )
Tienes que ser explícito sobre lo que quieres que sea el componente de tiempo en el objeto DateTime
resultante, por lo que el constructor de conversión general de DateTime
no puede hacerlo.
Intento simplemente agregar la información de TimeZone en un LocalDate antes de realizar algunos cálculos más. El LocalDate proviene del uso de ObjectLab LocalDateCalculator para agregar días a un DateTime existente, pero el método necesita devolver un ReadableInstant modificado para formar un intervalo que luego puedo inspeccionar.
El código que intento equivale a una conversión de Joda LocalDate a Joda DateTime:
LocalDate contextLocalBusinessDate = calculator.getCurrentBusinessDate();
DateTime businessDateAsInContextLocation = new DateTime(contextLocalBusinessDate, contextTimeZone);
El error que recibo proviene del sistema de conversión de Joda:
java.lang.IllegalArgumentException: No instant converter found for type: org.joda.time.LocalDate
at org.joda.time.convert.ConverterManager.getInstantConverter(ConverterManager.java:165)
at org.joda.time.base.BaseDateTime.<init>(BaseDateTime.java:147)
at org.joda.time.DateTime.<init>(DateTime.java:192)
Estoy buscando una solución a este problema, o una solución que da como resultado un intervalo preciso con información de zona horaria completa.