Timestamps

NanoDates supports various timestamp formats.


ISO8061 UTC timestamp formats (the default)

timestampmethod(nd::NanoDate)
2022-05-24T10:43:22Ztimestamp(floor(nd, Second); utc=true)
2022-05-24T10:43:22.350Ztimestamp(floor(nd, Millisecond); utc=true)
2022-05-24T10:43:22.350789Ztimestamp(floor(nd, Microsecond); utc=true)
2022-05-24T10:43:22.350789123Ztimestamp(floor(nd, Nanosecond); utc=true)

ISO8061 local timestamp formats

timestampmethod(nd::NanoDate)
2022-05-24T10:43:22-04:00timestamp(floor(nd, Second); localtime=true)
2022-05-24T10:43:22.350-04:00timestamp(floor(nd, Millisecond); localtime=true)
2022-05-24T10:43:22.350789-04:00timestamp(floor(nd, Microsecond); localtime=true)
2022-05-24T10:43:22.350789123-04:00timestamp(floor(nd, Nanosecond); localtime=true)

variant UTC timestamp (omits the Z)

timestampmethod(nd::NanoDate)
2022-05-24T10:43:22timestamp(floor(nd, Second); utc=true, postfix=false)
2022-05-24T10:43:22.350timestamp(floor(nd, Millisecond); utc=true, postfix=false)
2022-05-24T10:43:22.350789timestamp(floor(nd, Microsecond); utc=true, postfix=false)
2022-05-24T10:43:22.350789123timestamp(floor(nd, Nanosecond); utc=true, postfix=false)

variant local timestamp (adjusts for offset)

timestampmethod(nd::NanoDate)
2022-05-24T06:43:22timestamp(floor(nd, Second); localtime=true, postfix=false)
2022-05-24T06:43:22.350timestamp(floor(nd, Millisecond); localtime=true, postfix=false)
2022-05-24T06:43:22.350789timestamp(floor(nd, Microsecond); localtime=true, postfix=false)
2022-05-24T06:43:22.350789123timestamp(floor(nd, Nanosecond); localtime=true, postfix=false)

timestamp formats where no zone is specified

timestampmethod(nd::NanoDate)
2022-05-24T10:43:22timestamp(floor(nd, Second))
2022-05-24T10:43:22.350timestamp(floor(nd, Millisecond))
2022-05-24T10:43:22.350789timestamp(floor(nd, Microsecond))
2022-05-24T10:43:22.350789123timestamp(nd)

timestamps with subsecond separators (other options still available)

timestampmethod(nd::NanoDate)
2022-05-24T10:43:22.350_789timestamp(floor(nd, Microsecond); sep=_)
2022-05-24T10:43:22.350⬩789⬩123timestamp(nd; sep="⬩")

Offsets from the UNIX Epoch (1970-01-01 UTC)

NanoDateinteger offsetresolutionmethod(nd::NanoDate)
"2022-05-24T10:43:22"1653389002secondnanodate2unixseconds(nd)
"2022-05-24T10:43:22.123"1653389002123millisecondnanodate2unixmillis(nd)
"2022-05-24T10:43:22.123456"1653389002123456microsecondnanodate2unixmicros(nd)
"2022-05-24T10:43:22.123456789"1653389002123456789nanosecondnanodate2unixnanos(nd)
method(nd::NanoDate)inverse method
nanodate2unixseconds(nd)unixseconds2nanodate(integer secs)
nanodate2unixmillis(nd)unixmillis2nanodate(integer millisecs)
nanodate2unixmicros(nd)unixmicros2nanodate(integer microsecs)
nanodate2unixnanos(nd)unixnanos2nanodate(integer nanosecs)