diff --git a/core-java-modules/core-java-8-datetime-2/src/main/java/com/baeldung/localdatetoiso/LocalDateToISO.java b/core-java-modules/core-java-8-datetime-2/src/main/java/com/baeldung/localdatetoiso/LocalDateToISO.java index 969006a720..a04d554d5a 100644 --- a/core-java-modules/core-java-8-datetime-2/src/main/java/com/baeldung/localdatetoiso/LocalDateToISO.java +++ b/core-java-modules/core-java-8-datetime-2/src/main/java/com/baeldung/localdatetoiso/LocalDateToISO.java @@ -12,25 +12,24 @@ import org.apache.commons.lang3.time.DateFormatUtils; import org.joda.time.DateTime; import org.joda.time.DateTimeZone; import org.joda.time.format.DateTimeFormat; +import org.joda.time.format.ISODateTimeFormat; public class LocalDateToISO { public String formatUsingDateTimeFormatter(LocalDate localDate) { - DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ssX"); + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSSX"); String formattedDate = localDate.atStartOfDay().atOffset(ZoneOffset.UTC).format(formatter); return formattedDate; } public String formatUsingSimpleDateFormat(LocalDate date) { Date utilDate = Date.from(date.atStartOfDay(ZoneOffset.UTC).toInstant()); - DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssX"); + DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSX"); String formattedDate = dateFormat.format(utilDate); return formattedDate; } public String formatUsingJodaTime(org.joda.time.LocalDate localDate) { - DateTime dateTime = localDate.toDateTimeAtStartOfDay(DateTimeZone.UTC); - org.joda.time.format.DateTimeFormatter formatter = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss'Z'"); - String formattedDate = formatter.print(localDate); - return formattedDate; + org.joda.time.format.DateTimeFormatter formatter = ISODateTimeFormat.dateTime(); + return formatter.print(localDate.toDateTimeAtStartOfDay(DateTimeZone.UTC)); } }