跳到主要内容

获取日期时间

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

当前模块定义

sys:getCurrentTimeWindows系统Action
标准模块
输入 15 · 输出 13 · 枚举 3

输入参数

  • 时间来源sourceEnum必填

    时间数据来源

    填写 固定输入默认 currTime
    5 个选项当前时间、从文本转换、从Unix时间戳转换(秒
    当前时间默认currTime
    从文本转换fromString
    从Unix时间戳转换(秒fromUnixTimeStamp
    从Unix时间戳转换(毫秒Source_UnixTimeStampMs
    时间变量fromVar
  • 使用UTC时间useUtcBoolean可选

    是表示使用UTC时间,否表示使用本地时间(电脑的当前时间)。

    填写 固定输入条件 仅:currTime, fromString, fromUnixTimeStamp, Source_UnixTimeStampMs默认 false
  • 待解析文本timeStrText可选

    待转换为时间值的文本

    填写 输入或变量条件 仅:fromString
  • 数据格式inputFormatText可选

    可选,待解析文本的数据格式,如yyyy表示4位数年份,MM表示2位数月份等。详情请参考文档。

    填写 输入或变量条件 仅:fromString
  • 语言文化inputCultureText可选

    可选,待解析文本的语言文化。如zh-CN表示中文简体,en-US表示英文美国等。详情请参考文档。

    填写 输入或变量条件 仅:fromString默认 CURRENT
    11 个选项当前系统语言、中文、英文
    当前系统语言默认CURRENT
    中文zh-CN
    英文en-US
    日文ja-JP
    韩文ko-KR
    法文fr-FR
    德文de-DE
    西班牙文es-ES
    意大利文it-IT
    俄文ru-RU
    葡萄牙文(巴西pt-BR
  • 时间变量timeVarDateTime可选

    时间变量

    填写 UseVarOnly条件 仅:fromVar
  • Unix时间戳值timeStampStrText可选

    从1970年1月1日开始所经过的秒数或毫秒数。根据需要开启或关闭使用UTC时间选项。

    填写 输入或变量条件 仅:fromUnixTimeStamp, Source_UnixTimeStampMs
  • 添加天数addDaysNumber可选

    添加指定的天数(可以为小数/负数)

    填写 输入或变量默认 0
  • 添加小时数addHoursNumber可选

    添加指定的小时数(可以为小数/负数)

    填写 输入或变量默认 0
  • 添加分钟数addMinutesNumber可选

    添加指定的分钟数(可以为小数/负数)

    填写 输入或变量默认 0
  • 添加秒数addSecondsNumber可选

    添加指定的秒数(可以为小数/负数)

    填写 输入或变量默认 0
  • 添加月数addMonthsNumber可选

    添加指定的月数(整数)结果不跨月,如1月31日增加1个月等于2月28日。

    填写 输入或变量默认 0
  • 输出文本值格式formatText可选

    文本值的输出格式,请参考c#语言DateTime.ToString()的参数文档。

    填写 输入或变量默认 yyyy-MM-dd HH:mm:ss
  • 输出语言文化outputCultureText可选

    可选。指定将时间值格式化为文本时所使用的语言文化。如zh-CN表示中文简体,en-US表示美国英文等。

    填写 输入或变量默认 CURRENT
    11 个选项当前系统语言、中文、英文
    当前系统语言默认CURRENT
    中文zh-CN
    英文en-US
    日文ja-JP
    韩文ko-KR
    法文fr-FR
    德文de-DE
    西班牙文es-ES
    意大利文it-IT
    俄文ru-RU
    葡萄牙文(巴西pt-BR
  • 失败后停止stopIfFailBoolean可选

    失败后是否停止动作

    填写 固定输入默认 true

输出参数

  • 是否成功isSuccessBoolean

    操作是否成功

  • 时间值outputDateTime

    日期时间类型的结果时间

  • 文本值strValueText

    按'文本值格式'参数转换后的文本格式值

  • UNIX时间戳(s)timeStampInteger

    获取Unix时间戳(1970年1月1日0时到指定时间的秒数)

  • UNIX时间戳(ms)timeStampMsInteger

    获取Unix时间戳(1970年1月1日0时到指定时间的毫秒数)

  • yearInteger

    年份值

  • monthInteger

    月份值

  • dayInteger

    日期值

  • hourInteger

    当前小时数,24小时制。

  • minuteInteger

    当前分钟数。

  • secondInteger

    当前秒数。

  • 周第几天dayOfWeekInteger

    本周的第几天,周日为0,周一为1,以此类推。

  • 年第几天dayOfYearInteger

    本年的第几天。

概述

分三步:选时间来源 → 按需加减 → 设定文本格式。

获取日期时间

获取当前或从文本、unix时间戳转换日期时间
时间来源
时间数据来源
添加天数
0
添加指定的天数(可以为小数/负数)
添加小时数
0
添加指定的小时数(可以为小数/负数)
添加分钟数
0
添加指定的分钟数(可以为小数/负数)
添加秒数
0
添加指定的秒数(可以为小数/负数)
添加月数
0
添加指定的月数(整数)结果不跨月,如1月31日增加1个月等于2月28日。
输出文本值格式
yyyy-MM-dd HH:mm:ss
文本值的输出格式,请参考c#语言DateTime.ToString()的参数文档。
输出语言文化
可选。指定将时间值格式化为文本时所使用的语言文化。如zh-CN表示中文简体,en-US表示美国英文等。
是否成功
-- 选择变量 --
操作是否成功
时间值
-- 选择变量 --
日期时间类型的结果时间
文本值
-- 选择变量 --
按'文本值格式'参数转换后的文本格式值
UNIX时间戳(s)
-- 选择变量 --
获取Unix时间戳(1970年1月1日0时到指定时间的秒数)
UNIX时间戳(ms)
-- 选择变量 --
获取Unix时间戳(1970年1月1日0时到指定时间的毫秒数)
-- 选择变量 --
年份值
-- 选择变量 --
月份值
-- 选择变量 --
日期值
-- 选择变量 --
当前小时数,24小时制。
-- 选择变量 --
当前分钟数。
-- 选择变量 --
当前秒数。
周第几天
-- 选择变量 --
本周的第几天,周日为0,周一为1,以此类推。
年第几天
-- 选择变量 --
本年的第几天。

参数说明

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

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

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

当前时间

获取日期时间

获取当前或从文本、unix时间戳转换日期时间
时间来源
时间数据来源

从文本转换

获取日期时间

获取当前或从文本、unix时间戳转换日期时间
时间来源
时间数据来源
待解析文本
Monday, June 15, 2009
待转换为时间值的文本
数据格式
 
可选,待解析文本的数据格式,如yyyy表示4位数年份,MM表示2位数月份等。详情请参考文档。
语言文化
可选,待解析文本的语言文化。如zh-CN表示中文简体,en-US表示英文美国等。详情请参考文档。

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

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

数据格式:特定格式时填写,如 yyyy 表示 4 位年、MM 表示 2 位月。

从 Unix 时间戳转换

获取日期时间

获取当前或从文本、unix时间戳转换日期时间
时间来源
时间数据来源
Unix时间戳值
1676297270
从1970年1月1日开始所经过的秒数或毫秒数。根据需要开启或关闭使用UTC时间选项。

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

时间变量

获取日期时间

获取当前或从文本、unix时间戳转换日期时间
时间来源
时间数据来源
时间变量
timeVar
时间变量

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

加减时长

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

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

添加月数:整数。结果不跨月,如 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

示例

插入日期时间
获取日期时间
组合成文本$${0:yyyy-MM-dd} {0:yyyy.MM.dd} {0:yyyy/MM/dd} {0:yyyy年MM月dd日} {0:yyyy...
用户选择{context}
恢复活动窗口还原活动窗口
发送文本到窗口{context}

限制与排障

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

相关链接

更新于