pub struct Utc;Expand description
The UTC time zone. This is the most efficient time zone when you don’t need the local time. It is also used as an offset (which is also a dummy type).
Using the TimeZone methods
on the UTC struct is the preferred way to construct DateTime<Utc>
instances.
§Example
use chrono::{DateTime, TimeZone, Utc};
let dt = DateTime::from_timestamp(61, 0).unwrap();
assert_eq!(Utc.timestamp_opt(61, 0).unwrap(), dt);
assert_eq!(Utc.with_ymd_and_hms(1970, 1, 1, 0, 1, 1).unwrap(), dt);Implementations§
Source§impl Utc
impl Utc
Sourcepub fn today() -> Date<Utc>
👎Deprecated since 0.4.23: use Utc::now() instead, potentially with .date_naive()
pub fn today() -> Date<Utc>
use Utc::now() instead, potentially with .date_naive()
Returns a Date which corresponds to the current date.
Sourcepub fn now() -> DateTime<Utc>
pub fn now() -> DateTime<Utc>
Returns a DateTime<Utc> which corresponds to the current date and time in UTC.
See also the similar Local::now() which returns DateTime<Local>, i.e. the local date
and time including offset from UTC.
§Example
// Current time in UTC
let now_utc = Utc::now();
// Current date in UTC
let today_utc = now_utc.date_naive();
// Current time in some timezone (let's use +05:00)
let offset = FixedOffset::east_opt(5 * 60 * 60).unwrap();
let now_with_offset = Utc::now().with_timezone(&offset);Trait Implementations§
Source§impl Offset for Utc
impl Offset for Utc
Source§fn fix(&self) -> FixedOffset
fn fix(&self) -> FixedOffset
Source§impl TimeZone for Utc
impl TimeZone for Utc
Source§type Offset = Utc
type Offset = Utc
TimeZone value can be recovered via TimeZone::from_offset.Source§fn from_offset(_state: &Utc) -> Utc
fn from_offset(_state: &Utc) -> Utc
Source§fn offset_from_local_date(&self, _local: &NaiveDate) -> LocalResult<Utc>
fn offset_from_local_date(&self, _local: &NaiveDate) -> LocalResult<Utc>
NaiveDate if possible.Source§fn offset_from_local_datetime(&self, _local: &NaiveDateTime) -> LocalResult<Utc>
fn offset_from_local_datetime(&self, _local: &NaiveDateTime) -> LocalResult<Utc>
NaiveDateTime if possible.Source§fn offset_from_utc_date(&self, _utc: &NaiveDate) -> Utc
fn offset_from_utc_date(&self, _utc: &NaiveDate) -> Utc
NaiveDate. This cannot fail.Source§fn offset_from_utc_datetime(&self, _utc: &NaiveDateTime) -> Utc
fn offset_from_utc_datetime(&self, _utc: &NaiveDateTime) -> Utc
NaiveDateTime. This cannot fail.Source§fn with_ymd_and_hms(
&self,
year: i32,
month: u32,
day: u32,
hour: u32,
min: u32,
sec: u32,
) -> LocalResult<DateTime<Self>>
fn with_ymd_and_hms( &self, year: i32, month: u32, day: u32, hour: u32, min: u32, sec: u32, ) -> LocalResult<DateTime<Self>>
DateTime from year, month, day, time components and current time zone. Read moreSource§fn ymd(&self, year: i32, month: u32, day: u32) -> Date<Self>
fn ymd(&self, year: i32, month: u32, day: u32) -> Date<Self>
use with_ymd_and_hms() instead
Date from year, month, day and the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE. Read moreSource§fn ymd_opt(&self, year: i32, month: u32, day: u32) -> LocalResult<Date<Self>>
fn ymd_opt(&self, year: i32, month: u32, day: u32) -> LocalResult<Date<Self>>
use with_ymd_and_hms() instead
Date from year, month, day and the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE. Read moreSource§fn yo(&self, year: i32, ordinal: u32) -> Date<Self>
fn yo(&self, year: i32, ordinal: u32) -> Date<Self>
use from_local_datetime() with a NaiveDateTime instead
Date from year, day of year (DOY or “ordinal”) and the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE. Read moreSource§fn yo_opt(&self, year: i32, ordinal: u32) -> LocalResult<Date<Self>>
fn yo_opt(&self, year: i32, ordinal: u32) -> LocalResult<Date<Self>>
use from_local_datetime() with a NaiveDateTime instead
Date from year, day of year (DOY or “ordinal”) and the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE. Read moreSource§fn isoywd(&self, year: i32, week: u32, weekday: Weekday) -> Date<Self>
fn isoywd(&self, year: i32, week: u32, weekday: Weekday) -> Date<Self>
use from_local_datetime() with a NaiveDateTime instead
Date from ISO week date (year and week number), day of the week (DOW) and
the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE.
The resulting Date may have a different year from the input year. Read moreSource§fn isoywd_opt(
&self,
year: i32,
week: u32,
weekday: Weekday,
) -> LocalResult<Date<Self>>
fn isoywd_opt( &self, year: i32, week: u32, weekday: Weekday, ) -> LocalResult<Date<Self>>
use from_local_datetime() with a NaiveDateTime instead
Date from ISO week date (year and week number), day of the week (DOW) and
the current time zone.
This assumes the proleptic Gregorian calendar, with the year 0 being 1 BCE.
The resulting Date may have a different year from the input year. Read moreSource§fn timestamp(&self, secs: i64, nsecs: u32) -> DateTime<Self>
fn timestamp(&self, secs: i64, nsecs: u32) -> DateTime<Self>
use timestamp_opt() instead
DateTime from the number of non-leap seconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”)
and the number of nanoseconds since the last whole non-leap second. Read moreSource§fn timestamp_opt(&self, secs: i64, nsecs: u32) -> LocalResult<DateTime<Self>>
fn timestamp_opt(&self, secs: i64, nsecs: u32) -> LocalResult<DateTime<Self>>
DateTime from the number of non-leap seconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”)
and the number of nanoseconds since the last whole non-leap second. Read moreSource§fn timestamp_millis(&self, millis: i64) -> DateTime<Self>
fn timestamp_millis(&self, millis: i64) -> DateTime<Self>
use timestamp_millis_opt() instead
DateTime from the number of non-leap milliseconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”). Read moreSource§fn timestamp_millis_opt(&self, millis: i64) -> LocalResult<DateTime<Self>>
fn timestamp_millis_opt(&self, millis: i64) -> LocalResult<DateTime<Self>>
DateTime from the number of non-leap milliseconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”). Read moreSource§fn timestamp_nanos(&self, nanos: i64) -> DateTime<Self>
fn timestamp_nanos(&self, nanos: i64) -> DateTime<Self>
DateTime from the number of non-leap nanoseconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”). Read moreSource§fn timestamp_micros(&self, micros: i64) -> LocalResult<DateTime<Self>>
fn timestamp_micros(&self, micros: i64) -> LocalResult<DateTime<Self>>
DateTime from the number of non-leap microseconds
since January 1, 1970 0:00:00 UTC (aka “UNIX timestamp”). Read moreSource§fn datetime_from_str(
&self,
s: &str,
fmt: &str,
) -> Result<DateTime<Self>, ParseError>
fn datetime_from_str( &self, s: &str, fmt: &str, ) -> Result<DateTime<Self>, ParseError>
use DateTime::parse_from_str or NaiveDateTime::parse_from_str with and_utc() or and_local_timezone() instead
DateTime with the current offset. Read moreSource§fn from_local_date(&self, local: &NaiveDate) -> LocalResult<Date<Self>>
fn from_local_date(&self, local: &NaiveDate) -> LocalResult<Date<Self>>
use from_local_datetime() instead
NaiveDate to the timezone-aware Date if possible.Source§fn from_local_datetime(
&self,
local: &NaiveDateTime,
) -> LocalResult<DateTime<Self>>
fn from_local_datetime( &self, local: &NaiveDateTime, ) -> LocalResult<DateTime<Self>>
NaiveDateTime to the timezone-aware DateTime if possible.Source§fn from_utc_date(&self, utc: &NaiveDate) -> Date<Self>
fn from_utc_date(&self, utc: &NaiveDate) -> Date<Self>
use from_utc_datetime() instead
NaiveDate to the local time.
The UTC is continuous and thus this cannot fail (but can give the duplicate local time).Source§fn from_utc_datetime(&self, utc: &NaiveDateTime) -> DateTime<Self>
fn from_utc_datetime(&self, utc: &NaiveDateTime) -> DateTime<Self>
NaiveDateTime to the local time.
The UTC is continuous and thus this cannot fail (but can give the duplicate local time).