[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[问题求助] VBS如何输出格式为yyyymmdd的日期?

我写的代码如下
  1. wscript.echo join(split(date-1,"-",-1),"")
复制代码
但是这样在月份或日期是一位的情况下输出的格式为yyyyMd,如2012年6月8日则输出为201268,而我希望输出为20120608。
我看了下“区域和语言选项”在“自定义区域选项”中短日期格式默认为“yyyy-M-d”,日期分隔符默认为“-”。这个选项是可以修改为“yyyy日期分隔符mm日期分隔符dd”的,修改后上面的VBS代码可以输出格式为yyyymmdd的日期。
我现在的想法是在运行脚本时使用VBS将其修改,之后再自动改回默认。但是,
1.不知用VBS怎么改;
2.是否会即时生效?
3.系统内的Win32API是不是有输出此格式日期的能力,如果有就不用改系统设置了。
如果哪位有更好的方法还请告知,多谢了!

回复 2# neorobin
2楼的代码可以实现。
还想再问一下关于前一天的计算,date-1是不是容易出错?在什么情况下会出错?我看看我写的脚本需不需要考虑该情况。

TOP

本帖最后由 neorobin 于 2012-6-28 14:23 编辑
  1. wscript.echo(Year(Date()) & Right("0" & Month(Date()), 2) & Right("0" & Day(Date()), 2))
复制代码
另外, 前一天的计算建议用 DateAdd 函数, 例:
  1. DateAdd("d",-1,Date())
  2. DateAdd("d",-1,"6 9 2012")
复制代码

TOP

返回列表