fork(1) download
  1. import java.time.LocalDate;
  2. import java.time.LocalDateTime;
  3. import java.time.LocalTime;
  4. import java.time.OffsetDateTime;
  5. import java.time.ZoneId;
  6. import java.time.ZonedDateTime;
  7. import java.time.temporal.ChronoUnit;
  8.  
  9. public class Main {
  10. public static void main(String[] args) {
  11. ZoneId zoneIdLosAngeles = ZoneId.of("America/Los_Angeles");
  12. ZonedDateTime zdtNowLosAngeles = ZonedDateTime.now(zoneIdLosAngeles);
  13. System.out.println(zdtNowLosAngeles);
  14.  
  15. // With zone offset but without time zone name
  16. OffsetDateTime odtNowLosAngeles = zdtNowLosAngeles.toOffsetDateTime();
  17. System.out.println(odtNowLosAngeles);
  18.  
  19. // Truncated up to seconds
  20. odtNowLosAngeles = odtNowLosAngeles.truncatedTo(ChronoUnit.SECONDS);
  21. System.out.println(odtNowLosAngeles);
  22.  
  23. // ################ A winter date-time ################
  24. ZonedDateTime zdtLosAngelesWinter = ZonedDateTime
  25. .of(LocalDateTime.of(LocalDate.of(2021, 11, 20), LocalTime.of(10, 20)), zoneIdLosAngeles);
  26. System.out.println(zdtLosAngelesWinter); // 2021-11-20T10:20-08:00[America/Los_Angeles]
  27. System.out.println(zdtLosAngelesWinter.toOffsetDateTime()); // 2021-11-20T10:20-08:00
  28.  
  29. // ################ Parsing a date-time string with zone offset ################
  30. String strDateTime = "2008-11-13T13:23:30-08:00";
  31. OffsetDateTime odt = OffsetDateTime.parse(strDateTime);
  32. System.out.println(odt); // 2008-11-13T13:23:30-08:00
  33. }
  34. }
Success #stdin #stdout 0.11s 56068KB
stdin
Standard input is empty
stdout
2021-07-18T03:27:53.969046-07:00[America/Los_Angeles]
2021-07-18T03:27:53.969046-07:00
2021-07-18T03:27:53-07:00
2021-11-20T10:20-08:00[America/Los_Angeles]
2021-11-20T10:20-08:00
2008-11-13T13:23:30-08:00