我正在尝试将日期格式设置为2011-09-19
如果我执行以下操作:
leaveDate = "09/19/11"
FormatTime, fileDate, leaveDate, yyyy-MM-dd
MsgBox, %fileDate%
它只会获取当前日期和时间,因为我的输入日期格式无效。如何处理此09/19/11
并将其转换为此2011-09-19
?
我已阅读docs,但找不到执行此操作的功能。我只是忽略它吗?
答案 0 :(得分:1)
您的日期需要以YYYYMMDDHH24MISS格式提供。如果您的日期格式一致且所有年份都在2000之后,则使用SubStr()分隔日期的以下代码应该有效:
leaveDate := "09/19/11"
year := "20" . SubStr(leaveDate, 8, 2)
month := SubStr(leaveDate, 2, 2)
date := SubStr(leaveDate, 5, 2)
formattedTime := year . month . date
FormatTime, fileDate, %formattedTime%, yyyy-MM-dd
MsgBox, %fileDate%
在FormatTime a link is given to a forum topic的文档页面底部,给出了一个名为DateParse的函数的代码。此函数将以几乎任何格式显示日期并返回YYYYMMDDHH24MISS格式化的字符串,该字符串可用于代替SubStr()生成的字符串。
给出的例子是:
DateParse("2:35 PM, 27 November 2007")