Class Dates

java.lang.Object
aQute.lib.date.Dates

public class Dates extends Object
  • Field Details

    • UTC_ZONE_ID

      public static final ZoneId UTC_ZONE_ID
    • UTC_TIME_ZONE

      public static final TimeZone UTC_TIME_ZONE
    • RFC_7231_DATE_TIME

      public static final DateTimeFormatter RFC_7231_DATE_TIME
    • DATE_TOSTRING_DEFAULT_LOCALE

      private static final DateTimeFormatter DATE_TOSTRING_DEFAULT_LOCALE
    • DATE_TOSTRING

      public static final DateTimeFormatter DATE_TOSTRING
    • DATE_TIME_FORMATTERS

      private static final DateTimeFormatter[] DATE_TIME_FORMATTERS
  • Constructor Details

    • Dates

      private Dates()
  • Method Details

    • parse

      public static ZonedDateTime parse(String dateString)
      Return a ZonedDateTime that is set to the given datestring. This will try all standard DateTimeFormatter formats and a bunch more. It does not support formats where the day and month are ambiguous. It is either year-month-day or day-month-year.
      Parameters:
      dateString - a date formatted string
      Returns:
      a ZonedDateTime or null if the string cannot be interpreted as a date
    • toZonedDateTime

      public static ZonedDateTime toZonedDateTime(TemporalAccessor temporal)
      Turn a TemporalAccessor into a ZonedDateTime using defaults for missing fields. See toZonedDateTime(TemporalAccessor) for defaults.
      Parameters:
      temporal - the temporal to turn into ZonedDateTime
      Returns:
      a ZonedDateTime
    • toZonedDateTime

      public static ZonedDateTime toZonedDateTime(LocalDate date, LocalTime time, ZoneId zone)
      Return a new ZonedDateTime based on a local date, time, and zone. Each can be null.
      Parameters:
      date - the localdate, when null, the current date is used
      time - the time, when null, 00:00:00.000 is used
      zone - the time zone, when null, UTC is used
      Returns:
      a ZonedDateTime
    • toZonedDateTime

      public static ZonedDateTime toZonedDateTime(long epochMilli)
      Return a new ZonedDateTime based on a epoch milliseconds.
      Parameters:
      epochMilli - the number of milliseconds from 1970-01-01T00:00:00Z
      Returns:
      a ZonedDateTime using UTC time zone.
    • parseMillis

      public static long parseMillis(DateTimeFormatter formatter, String time)
      Parse a string into epoch milliseconds.
      Parameters:
      formatter - The formatter to parse the string with.
      time - Time string to parse into epoch milliseconds.
      Returns:
      The number of milliseconds from 1970-01-01T00:00:00Z.
    • formatMillis

      public static String formatMillis(DateTimeFormatter formatter, long epochMilli)
      Format epoch milliseconds to a string.
      Parameters:
      formatter - The formatter to format the epoch milliseconds with.
      epochMilli - Number of milliseconds from 1970-01-01T00:00:00Z.
      Returns:
      Time string from the epoch milliseconds.