Rust 日時に時間を加算・減算する

Rust 日時に時間を加算・減算する

Rustで、日時に時間を加算・減算するサンプルコードを記述してます。ライブラリ「chrono」の「Duration::hours」を使用することで可能です。Rustのバージョンは1.66.0を使用してます。

環境

  • OS windows11 home
  • rustc 1.66.0

日時に時間を加算・減算

日時に時間を加算・減算するは、「chrono」の「Duration::hours」を使用します。

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

[dependencies]
chrono = "0.4"

実際に使用してみます。

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

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 = dt1 + Duration::hours(1);
    let dt3 = dt1 + Duration::hours(15);

    let dt4 = dt1 - Duration::hours(1);
    let dt5 = dt1 - Duration::hours(15);    

    println!("dt1: {}", dt1);
    // dt1: 2022-07-07 12:34:56 +09:00
    println!("dt2: {}", dt2);
    // dt2: 2022-07-07 13:34:56 +09:00
    println!("dt3: {}", dt3);
    // dt3: 2022-07-08 03:34:56 +09:00
    println!("dt4: {}", dt4);
    // dt4: 2022-07-07 11:34:56 +09:00
    println!("dt5: {}", dt5);
    // dt5: 2022-07-07 11:34:56 +09:00

}

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