Java datetime
From wikinotes
now
import java.time.LocalDateTime; import java.time.ZoneOffset; LocalDateTime dt = LocalDateTime.now(); // current datetime (localtz) LocalDateTime dt_utc = LocalDateTime.now(ZoneOffset.UTC); // current datetime (utc) Instant instant = Instant.now(); // current datetime (utc)
timezones
It is always considered a best practice to work with datetimes in UTC until they are presented to the user (where they are converted to local time).
import java.time.Instant; import java.time.ZoneId; import java.time.ZonedDateTime; Instant dt = Instant.now(); // current datetime in UTC ZoneId tz = ZoneId.of("America/Toronto"); ZonedDateTime localized_dt = dt.atZone(tz); >>> "2019-02-09T16:09:05.764200-05:00[America/Toronto]"
date formatting
This is similar to python's strftime.
import java.time.LocalDateTime; import java.time.DateTimeFormatter; DateTimeFormatter dt_formatter = DateTimeFormatter.ofPattern("dd-MM-yyyy HH:mm:ss"); String dt_as_str = dt_utc.format(dt_formatter); >>> "09-22-1999 03:01:23"