az-common
自动收集自
crates/core/az-common/README.md。
通用日期与时间工具集,基于 chrono 提供本地化日期转换、工作日计算与时间范围工具。
功能
- 时间类型转换:在
SystemTime、NaiveDate、NaiveDateTime与本地时间之间互转 - 中文星期:将
Weekday映射为中文名称(周一~周日) - 月历工具:枚举指定月份的所有日期;补全缺失的月中日期
- 工作日判断:判断是否为工作日,统计月内工作日总数
- 时间区间:获取某天的起止时间点,对
SystemTime增减天数
安装
在 Cargo.toml 中添加:
[dependencies]
az-common = { path = "../az-common" } # workspace 内部引用
# 或发布后:
# az-common = "0.1" # crates.io 引用
用法
use az_common::{to_local_date, weekday_zh_cn, count_workdays, min_max_of_day};
use chrono::NaiveDate;
// SystemTime → 本地日期
let local_date = to_local_date(system_time);
// 中文星期
assert_eq!(weekday_zh_cn(chrono::Weekday::Mon), "周一");
// 统计 2025 年 5 月的工作日数
let workdays = count_workdays(2025, 5);
// 某天的起止时间
let date = NaiveDate::from_ymd_opt(2025, 5, 10).unwrap();
let (start, end) = min_max_of_day(date);
依赖的 crates
chrono- 日期与时间处理库