string – VB脚本日期格式“YYYYMMDDHHMMSS”

作为标题首字母,我需要填充now()函数以格式“YYYYMMDDHHMMSS”显示

我确实有一个关于尝试将其拆分出来的游戏,但这会丢掉我需要保留的前导零

mydt下面的例子是“27/02/2015 13:02:27”

mydt = now() 

MSGBOX Year(mydt)& Month(mydt)& Day(mydt)& Hour(mydt)& Minute(mydt)& second(mydt)

这将返回“201522713227”

我需要它返回“20150227130227”我可以使用if< 10但必须有一个更光滑的方式

解决方法

感谢@ Ekkehard.Horner和@Bagger

我已经审查了您的建议,并选择了下面的内容,以满足我的需求.

我选择了这个,因为它更有用/适应性我可以根据需要交换和更改日期格式.

Dim g_oSB : Set g_oSB = CreateObject("System.Text.StringBuilder")

Function sprintf(sFmt,aData)
   g_oSB.AppendFormat_4 sFmt,(aData)
   sprintf = g_oSB.ToString()
   g_oSB.Length = 0
End Function

'-------------------------------------------------------------------

Dim dt : dt = now()

WScript.Echo sprintf("{0:yyyyMMddhhmmss}",Array(dt))

这将返回所需格式的值yyyyMMddhhmmss

20150302110727

如果您只需要日期,则只需更改sprintf即可

sprintf("{0:yyyyMMdd}",Array(dt))

只想要时间

sprintf("{0:hhmmss}",Array(dt))

等等…..

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐