跳到主要内容

az-common

自动收集自 crates/core/az-common/README.md

通用日期与时间工具集,基于 chrono 提供本地化日期转换、工作日计算与时间范围工具。

功能

  • 时间类型转换:在 SystemTimeNaiveDateNaiveDateTime 与本地时间之间互转
  • 中文星期:将 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 - 日期与时间处理库