chrono::naive::serde

Module ts_seconds

source
Expand description

Used to serialize/deserialize from second-precision timestamps

§Example:

use chrono::naive::serde::ts_seconds;
#[derive(Deserialize, Serialize)]
struct S {
    #[serde(with = "ts_seconds")]
    time: NaiveDateTime,
}

let time = NaiveDate::from_ymd_opt(2015, 5, 15).unwrap().and_hms_opt(10, 0, 0).unwrap();
let my_s = S { time: time.clone() };

let as_string = serde_json::to_string(&my_s)?;
assert_eq!(as_string, r#"{"time":1431684000}"#);
let my_s: S = serde_json::from_str(&as_string)?;
assert_eq!(my_s.time, time);

Functions§

  • Deserialize a NaiveDateTime from a seconds timestamp
  • Serialize a datetime into an integer number of seconds since the epoch