问题描述
我正在尝试将特定时区中的日期传递给函数并尝试打印它:
use chrono::{DateTime,TimeZone,Utc};
use chrono_tz::Asia::Kolkata;
fn print_ist_time(date_time: DateTime<Kolkata>) {
println!("Time in IST {:?}",date_time)
}
fn main() {
let current_time = Utc::Now().naive_utc();
println!("{}",current_time);
let ist_time = Kolkata.from_utc_datetime(¤t_time);
print_ist_time(ist_time)
}
编译时,出现以下错误:
error[E0107]: wrong number of const arguments: expected 0,found 1
--> src/main.rs:4:39
|
4 | fn print_ist_time(date_time: DateTime<Kolkata>) {
| ^^^^^^^ unexpected const argument
error[E0107]: wrong number of type arguments: expected 1,found 0
--> src/main.rs:4:30
|
4 | fn print_ist_time(date_time: DateTime<Kolkata>) {
| ^^^^^^^^^^^^^^^^^ expected 1 type argument
我无法找出问题所在。
解决方法
如果您想知道不同国家/地区的时区,请尝试使用 chrono-tz
库。
因为这不是 Chrono 本身(在某种意义上除了 Local
,但这也取决于系统时间,我认为)