Rust 日時をUTCに変換する

Rust 日時をUTCに変換する

Rustで、日時をUTCに変換するサンプルコードを記述してます。ライブラリ「chrono」の「with_timezone」を使用することで可能です。Rustのバージョンは1.66.0を使用してます。

環境

  • OS windows11 home
  • rustc 1.66.0

日時をUTCに変換

日時をUTCに変換するは、「chrono」の「with_timezone」を使用します。

「chrono」が使用できない場合は、「Cargo.toml」に、以下を追加します。

[dependencies]
chrono = "0.4"

実際に使用してみます。

use chrono::{DateTime, Local, Utc, TimeZone};

fn main() {

    let dt1: DateTime<Local> = Local.datetime_from_str("2022/07/07 12:34:56", "%Y/%m/%d %H:%M:%S").unwrap();
    
    let dt2: DateTime<Utc> = dt1.with_timezone(&Utc);

    println!("dt1: {}", dt1);
    // dt1: 2022-07-07 12:34:56 +09:00
    println!("dt2: {}", dt2);
    // dt2: 2022-07-07 03:34:56 UTC

}

実行結果を見ると、変換されていることが確認できます。