Crates.io | hhmmss |
lib.rs | hhmmss |
version | 0.1.0 |
source | src |
created_at | 2020-10-10 20:01:56.842513 |
updated_at | 2020-10-10 20:01:56.842513 |
description | Format time and duration in chrono, std::time and time as HH:MM:SS and HH:MM:SS.xxx |
homepage | |
repository | https://github.com/TianyiShi2001/hhmmss |
max_upload_size | |
id | 298155 |
size | 16,491 |
Format time and duration in chrono, std::time and time as HH:MM:SS
or HH:MM:SS.xxx
.
I just wanted to format chrono::Duration
as HH:MM:SS
in some of my crates. However there isn't a ready-to-use method for this. Format is only supported for instances. Neither time
nor std::time
's Duration
support this. So I made this crate, mainly for my own convinience.
Add hhmmss
to Cargo.toml
:
[dependencies]
hhmmss = "0.1"
Then:
use hhmmss::Hhmmss;
fn main() {
let std_duration = std::time::Duration::new(3661, 534_000_000);
assert_eq!(&std_duration.hhmmss(), "01:01:01");
assert_eq!(&std_duration.hhmmssxxx(), "01:01:01.534");
let chrono_duration = chrono::Duration::from_std(std_duration).unwrap(); // needs chrono
assert_eq!(&chrono_duration.hhmmss(), "01:01:01");
assert_eq!(&chrono_duration.hhmmssxxx(), "01:01:01.534");
let time_duration = time::Duration::from_std(std_duration).unwrap(); // needs time
assert_eq!(&time_duration.hhmmss(), "01:01:01");
assert_eq!(&time_duration.hhmmssxxx(), "01:01:01.534");
}