面向对象的本地日期时间容器(类似 Qt QDateTime)。与基础库里的扁平命令(取当前日期、计算时间 等)并存:需要「一个变量里存时间、反复读写/加减」时用本类;一次性计算仍可用原命令。
支持库路径:扩展类库 → 日期时间类
快速开始
函数 主窗口.创建完毕 () {
日期时间类 dt
dt.取当前时间 ()
输出 (dt.到文本 ()) // 2026-09-02 12:30:45
dt.解析 ("2026-09-02 08:00:00")
dt.加 (7, "日") // 加 7 天;也可写 秒/分/时/月/年
输出 (dt.到文本 ())
长整数 ts = dt.取时间戳 ()
输出 (ts)
日期时间类 dt2
dt2.从时间戳 (ts)
输出 (dt.比较 (dt2)) // 0=相等,负数=dt 更早
}
声明 日期时间类 变量名 时会自动创建对象,一般不必写 创建日期时间()。
支持的文本格式(解析)
解析(文本) 可识别:
| 示例 | 说明 |
|---|---|
2026-09-02 12:30:00 |
常用,带时分秒 |
2026-09-02 |
仅日期,时分秒为 0 |
2026/09/02 12:30:00 |
斜杠分隔 |
2026/09/02 |
斜杠仅日期 |
解析失败时 是否有效() 为假,取错误() 返回原因。
到文本 · 格式码
到文本([整数 格式=1]):
| 格式码 | 输出示例 |
|---|---|
| 1(默认) | 2026-09-02 12:30:00 |
| 2 | 2026-09-02(仅日期) |
| 3 | 2026/09/02 12:30:00 |
| 4 | 2026/09/02(仅日期) |
加 · 时间单位
加(长整数 数量, 文本 单位) — 数量为负表示减。
| 单位(任选其一) | 含义 |
|---|---|
秒 / s / second |
秒 |
分 / m / minute |
分钟 |
时 / h / hour |
小时 |
日 / day(省略时默认) |
天 |
月 / month |
月(按日历进位) |
年 / year |
年 |
dt.解析 ("2026-01-31 10:00:00")
dt.加 (1, "月") // → 2026-02-28 …
dt.加 (-3, "日")
时间戳
取时间戳([逻辑 毫秒=假]):Unix 时间戳;毫秒=真时返回 13 位毫秒戳。从时间戳(长整数 戳, [逻辑 毫秒=假]):反向填充对象。
基于系统本地时区,非 UTC。
与扁平「日期时间」命令的区别
| 场景 | 推荐 |
|---|---|
| 变量里保存、多次加减/比较/格式化 | 日期时间类 |
取当前日期()、友好时间()、取工作日 等一次性工具 |
基础库 日期时间 命令 |
| 两个对象比较 | dt1.比较(dt2) |
| 只比两个字符串 | 仍可用 比较时间(文本, 文本) |
方法一览
| 方法 | 返回 | 说明 |
|---|---|---|
取当前时间() |
逻辑 | 设为当前本地时间(写入对象;基础库同名命令返回文本) |
解析(文本) |
逻辑 | 从文本填充 |
从时间戳(戳, [毫秒=假]) |
逻辑 | 从 Unix 戳填充 |
到文本([格式=1]) |
文本 | 格式化输出 |
取时间戳([毫秒=假]) |
整数 | Unix 戳 |
加(数量, 单位) |
逻辑 | 在当前值上加减 |
比较(日期时间类 其他) |
整数 | <0 / 0 / >0 |
取年 取月 取日 取时 取分 取秒 |
整数 | 分量 |
是否有效() |
逻辑 | 是否已成功赋值 |
清空() |
无 | 重置 |
取错误() |
文本 | 最近错误信息 |
常见错误
- 未解析就取分量 — 先
取当前时间()或解析(...),再取年()等。 - 比较传文本 —
比较参数必须是另一个 日期时间类 变量,不能传字符串。 - 与 UTC 混淆 — 时间戳按本地时区解释,跨时区业务请自行换算。