fork download
  1. import java.time.Instant;
  2. import java.time.LocalDateTime;
  3. import java.time.ZoneId;
  4. import java.time.ZonedDateTime;
  5. import java.time.format.DateTimeFormatter;
  6. import java.time.format.DateTimeFormatterBuilder;
  7. import java.util.Date;
  8. import java.util.Locale;
  9.  
  10. class Main {
  11. public static void main(String[] args) {
  12. String strDateTime = "1992-03-11 12:00:12.123";
  13.  
  14. DateTimeFormatter parser = DateTimeFormatter.ofPattern("uuuu-MM-dd HH:mm:ss.SSS", Locale.ENGLISH);
  15.  
  16. // An alternative parser
  17. DateTimeFormatter ldtParser = new DateTimeFormatterBuilder().append(DateTimeFormatter.ISO_LOCAL_DATE)
  18. .appendLiteral(' ').append(DateTimeFormatter.ISO_LOCAL_TIME).toFormatter(Locale.ENGLISH);
  19.  
  20. LocalDateTime ldt = LocalDateTime.parse(strDateTime, parser);
  21. System.out.println(ldt);
  22.  
  23. // Parsing using the alternative parser
  24. ldt = LocalDateTime.parse(strDateTime, ldtParser);
  25. System.out.println(ldt);
  26.  
  27. // Converting LocalDateTime to a ZonedDateTime
  28. // Replace ZoneId.systemDefault() with applicable ZoneId e.g.
  29. // ZoneId.of("America/New_York")
  30. ZoneId zoneId = ZoneId.systemDefault();
  31. ZonedDateTime zdt = ldt.atZone(zoneId);
  32. System.out.println(zdt);
  33. // Alternatively,
  34. zdt = ZonedDateTime.of(ldt, zoneId);
  35. System.out.println(zdt);
  36.  
  37. // Obtaining an Instant
  38. Instant instant = zdt.toInstant();
  39. System.out.println(instant);
  40.  
  41. // In case you need an instance of java.util.Date
  42. Date date = Date.from(instant);
  43. }
  44. }
Success #stdin #stdout 0.12s 49684KB
stdin
Standard input is empty
stdout
1992-03-11T12:00:12.123
1992-03-11T12:00:12.123
1992-03-11T12:00:12.123Z[GMT]
1992-03-11T12:00:12.123Z[GMT]
1992-03-11T12:00:12.123Z