日期和时间的代码

以下代码用于将格式化的日期和时间字符串传递给外部程序。它们还经常用于将日期字符串传递给内部命令 - 例如,要以当前日期创建文件夹,你可以使用 CreateFolder {date|yyyyMMdd} 这样的命令。

<格式> 值是一个字符串,由用于格式化日期和时间字符串的各种标记组成。如果未指定格式,则使用默认的系统日期和时间格式。

例如,{date|yyyy-MM-dd} 将格式化日期为 2016-09-22{time|HHmmss} 将格式化时间为 084450

虽然此页面主要介绍 {date}, {dateu}, {time}{timeu} 代码,但下面描述的语法还用于其它使用日期和时间格式的地方。语法基于 Windows 的一个语法,另加一些补充,如果你曾经自定义过 Windows 日期时间格式,你应该会很熟悉。

**D#、T# 和 A# 前缀:**日期格式可以用 D# 开头。时间格式可以用 T# 开头。统一格式(同时包含日期和时间字段)可以用 A# 开头。对于 {date}, {dateu}, {time}{timeu} 来说,这些前缀是可选的,其中格式类型是隐含的,但在代码同时返回日期和时间的某些情况下,前缀是必需的。例如,在重命名文件时使用 {modified} 代码,可以使用 {modified|D#yyyy} 插入文件的修改年份。

特殊标志:为了修改格式化执行方式,可以在格式字符串的开头,在任何 D#、T# 或 A# 前缀之后,出现一些特殊标志。与主要格式标志一样,它们区分大小写。如果同时使用两个或更多个特殊标志,它们的顺序并不重要。

  • I - **系统不变区域设置:**系统语言设置(区域设置)会影响日期和时间格式。例如,MMMMMMM 日期代码会生成你所说的语言的月份名称。tt 时间代码会输出你的区域设置中 “AM” 和 “PM” 的版本,在不使用它们的某些地方(例如法国)中甚至可能完全没有。你可以通过在格式字符串的开头放置一个 I(大写 i)来覆盖此值,并使用 系统不变区域设置。系统不变区域设置类似于北美区域设置,并在所有机器和设置上生成相同的结果。它可与日期和时间格式一起使用。例如,在 6 月 23 日晚上 10:52 运行 {date|Idd-MMM} {time|Ihh:mm tt} 始终会输出 “23-Jun 10:52 PM”。

  • N - 日期名称:如果你希望一周内的日期被日期名称(“星期一”、“今天”、“明天”等)替换,类似于 显示友好日期 偏好设置选项,请使用 N(大写 n)开始日期格式。它只能与日期格式一起使用。例如,如果 Opus 以英文运行,{date|Ndd-MMM-yyyy} 会输出 “Today”。你不大可能想要在 {date} 中使用日期名称,但它们也能在重命名时用于文件时间戳;例如,在重命名对话框中使用 {modified|D#Nyyyy-MM-dd}。虽然你可以组合 IN 标志,但它们不会相互作用;日期名称始终会以你配置 Opus 使用的语言输出。

  • M - 毫秒:如果你希望包含毫秒,类似于 显示毫秒 偏好设置选项,请以 M(大写 m)字符开始时间格式。它只能与时间格式一起使用。如果包含毫秒,毫秒将始终在秒之后添加,并填充为三位数。例如,{time|MHH:mm:ss} 会返回类似 “08:45:32.021” 的时间。如果时间值没有毫秒精度,毫秒部分将为零。

日期代码使用以下标记 – 请注意,这些标记区分大小写!ISO 周ISO 年 标记指 ISO 周日期系统

时间代码使用以下标记 - 这些也区分大小写。

最后更新于