2 个版本
| 0.1.1 | 2023 年 5 月 5 日 |
|---|---|
| 0.1.0 | 2023 年 5 月 5 日 |
#346 在 日期和时间
29KB
682 代码行
Carbono
Carbono 是一个简单的 Rust API 扩展,用于 chrono DateTime。
[dependencies]
carbono = "0.1"
入门
use carbono::Carbono;
fn main() {
let carbono = Carbono::now(); // 2022-12-15 12:30:00
println!("{}", carbono); // 2022-12-15 12:30:00 UTC
assert_eq!(carbono.timestamp(), 1671107400);
assert_eq!(carbono.rfc3339(), "2022-12-15T12:30:00+00:00");
assert_eq!(carbono.rfc2822(), "Thu, 15 Dec 2022 12:30:00 +0000");
assert_eq!(carbono.year(), 2022);
assert_eq!(carbono.month(), 12);
assert_eq!(carbono.day(), 15);
assert_eq!(carbono.hour(), 12);
assert_eq!(carbono.minute(), 30);
assert_eq!(carbono.second(), 0);
assert_eq!(carbono.datetime(), "2022-12-15 12:30:00");
assert_eq!(carbono.date(), "2022-12-15");
assert_eq!(carbono.time(), "12:30:00");
assert_eq!(format!("{:?}", carbono.iso_week()), "2022-W50");
assert_eq!(carbono.weekday(), 3); // Thursday
assert_eq!(carbono.is_wednesday(), false);
assert_eq!(carbono.is_thursday(), true);
assert_eq!(carbono.is_friday(), false);
assert_eq!(carbono.is_past(), true);
assert_eq!(carbono.is_future(), false);
assert_eq!(carbono.is_today(), true); // 2022-12-15
assert_eq!(carbono.add_day().is_today(), false); // 2022-12-16
assert_eq!(carbono.add_year().add_month().date(), "2024-01-15");
assert_eq!(carbono.start_year().datetime(), "2022-01-01 00:00:00");
}
修改日期和/或时间
add_year()sub_year()add_years(years: i32)sub_years(years: i32)add_month()sub_month()add_months(months: i32)sub_months(months: i32)add_week()sub_week()add_weeks(weeks: i64)sub_weeks(weeks: i64)add_day()sub_day()add_days(days: i64)sub_days(days: i64)add_hour()sub_hour()add_hours(hours: i64)sub_hours(hours: i64)add_minute()sub_minute()add_minutes(minutes: i64)sub_minutes(minutes: i64)add_second()sub_second()add_seconds(seconds: i64)sub_seconds(seconds: i64)
移动到周期开始/结束
start_yearstart_monthstart_daystart_hourstart_minuteend_yearend_monthend_dayend_hourend_minute
依赖项
~1.5MB
~19K SLoC