pub enum Format {
A,
BCD,
X,
Custom(String),
}
Expand description
Format
§“a” format
Four newline-separated timestamps with the epoch time in fractional seconds, RFC 3339 format / UTC, default format / UTC, and default format / local
%s.%f
%Y-%m-%dT%H:%M:%SZ
%a %d %b %Y %H:%M:%S %Z # UTC
%a %d %b %Y %H:%M:%S %Z # Specified or local timezone
§“x” format
Novel UTC / base 60 encoding
0* 0 1 2 3 4 5 6 7 8 9
1* A B C D E F G H I J
2* K L M N O P Q R S T
3* U V W X Y Z a b c d
4* e f g h i j k l m n
5* o p q r s t u v w x
Field | Values | Result |
---|---|---|
Year | 2020 => 33*60+40 | Xe |
Month | Jan-Dec => 0-11 | 0-B |
Day | 0-27/28/29/30 | 0-R/S/T/U |
Hour | 0-23 | 0-N |
Minute | 0-59 | 0-x |
Second | 0-59 | 0-x |
See also Dtg::from_x
§Custom format
See also Dtg::format
§Date specifiers
Spec. | Example | Description |
---|---|---|
%Y | 2001 | The full proleptic Gregorian year, zero-padded to 4 digits. |
%C | 20 | The proleptic Gregorian year divided by 100, zero-padded to 2 digits. |
%y | 01 | The proleptic Gregorian year modulo 100, zero-padded to 2 digits. |
%m | 07 | Month number (01–12), zero-padded to 2 digits. |
%b | Jul | Abbreviated month name. Always 3 letters. |
%B | July | Full month name. Also accepts corresponding abbreviation in parsing. |
%h | Jul | Same as %b . |
%d | 08 | Day number (01–31), zero-padded to 2 digits. |
%e | 8 | Same as %d but space-padded. Same as %_d . |
%a | Sun | Abbreviated weekday name. Always 3 letters. |
%A | Sunday | Full weekday name. Also accepts corresponding abbreviation in parsing. |
%w | 0 | Sunday = 0, Monday = 1, …, Saturday = 6. |
%u | 7 | Monday = 1, Tuesday = 2, …, Sunday = 7. (ISO 8601) |
%U | 28 | Week number starting with Sunday (00–53), zero-padded to 2 digits. |
%W | 27 | Same as %U , but week 1 starts with the first Monday in that year instead. |
%G | 2001 | Same as %Y but uses the year number in ISO 8601 week date. |
%g | 01 | Same as %y but uses the year number in ISO 8601 week date. |
%V | 27 | Same as %U but uses the week number in ISO 8601 week date (01–53). |
%j | 189 | Day of the year (001–366), zero-padded to 3 digits. |
%D | 07/08/01 | Month-day-year format. Same as %m/%d/%y . |
%x | 07/08/01 | Locale’s date representation (e.g., 12/31/99). |
%F | 2001-07-08 | Year-month-day format (ISO 8601). Same as %Y-%m-%d . |
%v | 8-Jul-2001 | Day-month-year format. Same as %e-%b-%Y . |
§Time specifiers
Spec. | Example | Description |
---|---|---|
%H | 00 | Hour number (00–23), zero-padded to 2 digits. |
%k | 0 | Same as %H but space-padded. Same as %_H . |
%I | 12 | Hour number in 12-hour clocks (01–12), zero-padded to 2 digits. |
%l | 12 | Same as %I but space-padded. Same as %_I . |
%P | am | am or pm in 12-hour clocks. |
%p | AM | AM or PM in 12-hour clocks. |
%M | 34 | Minute number (00–59), zero-padded to 2 digits. |
%S | 60 | Second number (00–60), zero-padded to 2 digits. |
%f | 026490000 | The fractional seconds (in nanoseconds) since last whole second. |
%.f | .026490 | Similar to .%f but left-aligned. These all consume the leading dot. |
%.3f | .026 | Similar to .%f but left-aligned but fixed to a length of 3. |
%.6f | .026490 | Similar to .%f but left-aligned but fixed to a length of 6. |
%.9f | .026490000 | Similar to .%f but left-aligned but fixed to a length of 9. |
%3f | 026 | Similar to %.3f but without the leading dot. |
%6f | 026490 | Similar to %.6f but without the leading dot. |
%9f | 026490000 | Similar to %.9f but without the leading dot. |
%R | 00:34 | Hour-minute format. Same as %H:%M . |
%T | 00:34:60 | Hour-minute-second format. Same as %H:%M:%S . |
%X | 00:34:60 | Locale’s time representation (e.g., 23:13:48). |
%r | 12:34:60 AM | Hour-minute-second format in 12-hour clocks. Same as %I:%M:%S %p . |
§Time zone specifiers
Spec. | Example | Description |
---|---|---|
%Z | ACST | Local time zone name. Skips all non-whitespace characters during parsing. |
%z | +0930 | Offset from the local time to UTC (with UTC being +0000 ). |
%:z | +09:30 | Same as %z but with a colon. |
%#z | +09 | Parsing only: Same as %z but allows minutes to be missing or present. |
§Date & time specifiers
Spec. | Example | Description |
---|---|---|
%c | Sun Jul 8 00:34:60 2001 | Locale’s date and time (e.g., Thu Mar 3 23:05:25 2005). |
%+ | 2001-07-08T00:34:60.026490+09:30 | ISO 8601 / RFC 3339 date & time format. |
%s | 994518299 | UNIX timestamp, the number of seconds since 1970-01-01 00:00 UTC. |
§Special specifiers
Spec. | Description |
---|---|
%t | Literal tab (\t ). |
%n | Literal newline (\n ). |
%% | Literal percent sign. |
Variants§
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Format
impl RefUnwindSafe for Format
impl Send for Format
impl Sync for Format
impl Unpin for Format
impl UnwindSafe for Format
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more