Crate chrono_persian

Crate chrono_persian 

Source
Expand description

§chrono-persian

§About

this crate contains a set of helper functions to convert chrono datetimes to persian (jalali) calender it provides a simple Trait ToPersian which is implemented for NaiveDateTime, DateTime<Utc> and DateTime<Local

§

§Example

use chrono::{DateTime, Utc, Local, NaiveDateTime};
use chrono_persian::ToPersian;

// convert a datetime utc
let utc = "2024-11-09 22:38:28 UTC".parse::<DateTime<Utc>>().unwrap();
let a = utc.to_persian().unwrap();
assert_eq!(a.to_string(), "1403-08-20 02:08:28 UTC");

//convert a datetime local
let local = "2024-11-10 02:17:54 +03:30".parse::<DateTime<Local>>().unwrap();
let b = local.to_persian().unwrap();
assert_eq!(b.to_string(), "1403-08-20 02:17:54 +00:00");
  
//convert a naivedatetime
let now = NaiveDateTime::parse_from_str("2024-11-26 08:55:11","%Y-%m-%d %H:%M:%S").unwrap();
let a = now.to_persian().unwrap();
assert_eq!(a.to_string(),"1403-09-06 12:25:11");

Traits§

ToPersian
Convert a chrono type to the persian equivalent