我的目标是转换utc为loc:
use chrono::{Local, UTC, TimeZone};
let utc = chrono::UTC::now();
let loc = chrono::Local::now();
println!("{:?}", utc);
println!("{:?}", loc);
println!("{:?}", utc.with_timezone(&Local));
println!("{:?}", Local.from_utc_datetime(&utc.naive_local()));
Run Code Online (Sandbox Code Playgroud)
...产生了以下输出:
use chrono::{Local, UTC, TimeZone};
let utc = chrono::UTC::now();
let loc = chrono::Local::now();
println!("{:?}", utc);
println!("{:?}", loc);
println!("{:?}", utc.with_timezone(&Local));
println!("{:?}", Local.from_utc_datetime(&utc.naive_local()));
Run Code Online (Sandbox Code Playgroud)
loc第二行显示的时间是我转换时想要看到的时间utc。
如何将DateTime<UTC>实例正确转换为DateTime<Local>?
我正在使用chrono 0.2.2。在DateTime.from_utc方法中,它甚至告诉我应该使用该TimeZone特征。但是,我缺少一些东西。