Rustで日時をパースしてUNIXタイムスタンプを取得する

SystemTimeを生成したのち、duration_sinceでUNIX時間に変換している。

use chrono::{DateTime, Local};

use std::time::SystemTime;

fn main() {
    let answer = 1573011309;

    let result: Result<SystemTime, chrono::ParseError> = "2019-11-06T03:35:09.123Z"
        .parse::<DateTime<Local>>()
        .map(|i| i.into());

    assert_eq!(
        result
            .unwrap()
            .duration_since(SystemTime::UNIX_EPOCH)
            .unwrap()
            .as_secs(),
        answer
    );
}

参考

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA