跳到主要内容

获取日期时间

取当前时间,或从文本、Unix 时间戳、时间变量转换,再按需要加减时长并格式化输出。只要对已有时间做差或换时区,用 计算时间。表达式里也可以直接用 C# DateTime

当前模块定义

概述

分四步:选时间来源 → 按需加减 → 设定文本格式 → 输出到变量。

参数说明

时间来源:当前时间、从文本转换、从 Unix 时间戳转换(秒 / 毫秒)、时间变量。

使用UTC时间:仅当前时间、从文本、从时间戳。开启返回 UTC,关闭返回本地时间。默认关闭。标准 Unix 时间戳请开启;按本地 1970-01-01 起算的时间戳请关闭。

失败后停止:失败是否中止动作。默认开启。

当前时间

从文本转换

待解析文本:要从中解析时间的文本。

语言文化:解析其它语言的时间文本时使用。与语言无关的值(如 2023-12-13 22:22:00)保持默认即可。

数据格式:特定格式时填写,如 yyyy 表示 4 位年、MM 表示 2 位月。待解析文本与数据格式必须一一对应。

从 Unix 时间戳转换

Unix时间戳值:从 1970-01-01 起经过的秒数或毫秒数。

时间变量

时间变量:要读取的时间变量。

加减时长

在原始时间上增减,仅需要时填写。

添加天数 / 添加小时数 / 添加分钟数 / 添加秒数:正加负减,可以为小数。

添加月数:整数。结果不跨月,如 3 月 31 日加 1 个月等于 4 月 30 日。

输出文本格式

不需要 文本值 时可忽略。

输出文本值格式:控制 文本值 的格式,见 C# DateTime.ToString。例如 yyyy-MM-dd HH:mm:ss2020-06-16 10:38:32。默认即此格式。

输出语言文化:输出其它语言的时间文本时设定。

常用格式指令

标准日期时间格式字符串参考)需单独使用,不能组合。

格式说明符描述示例
d短日期2009-06-15T13:45:30 → 6/15/2009 (en-US)
D长日期→ Monday, June 15, 2009 (en-US)
f / F完整日期/时间(短/长)
g / G常规日期/时间(短/长)zh-CN 下 G → 2009/6/15 13:45:30
M、m月/日June 15 (en-US)
O、o往返含时区偏移
R、rRFC1123Mon, 15 Jun 2009 20:45:30 GMT
s可排序2009-06-15T13:45:30
t / T短/长时间
u / U通用可排序 / 通用完整
Y、y年月June 2009 (en-US)

自定义日期时间格式字符串参考)可组合,如 yyyy-MM-dd

符号说明示例(2016-05-09 13:09:55.2350)
yy / yyyy两位 / 四位年16 / 2016
M / MM月(不补 0 / 补 0)5 / 05
d / dd9 / 09
ddd / dddd周几 / 星期几周一 / 星期一
h / hh12 小时制1 / 01
H / HH24 小时制13
m / mm9 / 09
s / ss5 / 05
ff / fff / ffff毫秒前 2/3/4 位23 / 235 / 2350

分隔符可用 -/: 或中文,例如 yyyy年MM月dd日 HH时mm分ss秒

输出

  • 是否成功
  • 时间值:日期时间类型的结果。
  • 文本值:按 输出文本值格式 转成的文本。
  • UNIX时间戳(s) / UNIX时间戳(ms):此处不考虑原始值是本地还是 UTC。
  • / / / / /
  • 周第几天:周日为 0,周一为 1。
  • 年第几天

表达式

也可以不用本模块,例如:

  • $= "当前时间是:" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
  • $=DateTime.Now.Year

示例

限制与排障

从文本转换失败时,核对 语言文化数据格式 是否与原文一致。时间戳单位要和「秒 / 毫秒」操作对应。1.36.33+ 才有输入格式/语言、输出语言等参数。

相关链接

更新于