如何将SystemTime格式化为字符串?

时间:2017-07-29 07:23:01

标签: time rust

似乎我无法将SystemTime变成字符串。我必须使用SystemTime,因为我需要从std::fs::Metadata::created()返回的值。

1 个答案:

答案 0 :(得分:5)

您应该使用Chrono进行格式化支持。从Chrono v0.4.0开始,这更容易,因为它现在实现了std::time::SystemTime的直接转换:

extern crate chrono;
use chrono::offset::Utc;
use chrono::DateTime;
use std::time::SystemTime;

let system_time = SystemTime::now();
let datetime: DateTime<Utc> = system_time.into();
println!("{}", datetime.format("%d/%m/%Y %T"));

如果您希望以当地时区而不是UTC时间,请使用Local代替Utc

有关格式说明符的完整列表,请参阅Chrono documentation