Autohotkey 更改现有日期的格式

Autohotkey 更改现有日期的格式,autohotkey,Autohotkey,我正在尝试将日期格式化为如下所示2011-09-19 如果我这样做: leaveDate = "09/19/11" FormatTime, fileDate, leaveDate, yyyy-MM-dd MsgBox, %fileDate% 它将只拾取当前日期和时间,因为我的输入日期格式无效。我怎样才能把这个09/19/11变成这个2011-09-19 我已经阅读了,但是我找不到一个函数来做这个。我只是忽略了它吗?您的日期需要以格式提供。如果您的日期格式是一致的,并且所有年份都在2000年之后

我正在尝试将日期格式化为如下所示
2011-09-19

如果我这样做:

leaveDate = "09/19/11"
FormatTime, fileDate, leaveDate, yyyy-MM-dd
MsgBox, %fileDate%
它将只拾取当前日期和时间,因为我的输入日期格式无效。我怎样才能把这个
09/19/11
变成这个
2011-09-19


我已经阅读了,但是我找不到一个函数来做这个。我只是忽略了它吗?

您的日期需要以格式提供。如果您的日期格式是一致的,并且所有年份都在2000年之后,则以下用于分割日期的代码应起作用:

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文档页面的底部,提供名为DateParse的函数的代码。此函数将以几乎任何格式获取日期,并返回YYYYMMDDHH24MISS格式的字符串,该字符串可以代替SubStr()生成的字符串

举例如下:

DateParse("2:35 PM, 27 November 2007")