在 VBScript 中,我需要用日期初始化变量。在我的国家,我们通常使用以下格式指定日期:日月年
这是我试图在 VBScript 中执行的操作:
Date = #07-06-1973#
MsgBox FormatDateTime(Date, vbLongDate)
但我得到的日期是 7 月 6 日,而我原本期待的是 6 月 7 日!
现在,第一个数字似乎代表月份,这是我尝试做的:
Date = #13-06-1973#
MsgBox FormatDateTime(Date, vbLongDate)
但现在,第一个数字代表日期! (我得到以下日期:6 月 13 日)
我还没有找到一种方法来强制日期格式,这样就不再有歧义了。
严格来说,VBScript 仅支持 US 和 ISO 格式的日期文字:
' US format:
Date = #10/19/2009#
' ISO format:
Date = #2009-10-19#
但是,日期分隔符可以不同(斜杠、破折号、空格等),并且 VBScript 引擎还可以识别包含缩写月份名称的日期(#Oct 19, 2009#
) 和带有交换日期部分的明确日期 (#2009 19 10#
)。后者解释了原因#13-06-1973#
在您的第二个示例中,被识别为 6 月 13 日:数字 13 超出了可接受的月份范围 (1-12),因此它被解释为日期部分。
如果您想以区域格式(即区域和语言选项中指定的格式)指定日期,您可以使用CDate函数转换日期字符串,例如:
' Russian format
Date = CDate("19.10.2009")
但使用 US 和 ISO 日期文字更可靠且更受青睐。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)