Board logo

标题: [转贴] VBS脚本时间获取简易教程 [打印本页]

作者: find    时间: 2012-3-1 22:38     标题: VBS脚本时间获取简易教程

nowday=formatdatetime(now,2)
yy=right("0000"&year(nowday),4)
mm=right("00"&month(nowday),2)
dd=right("00"&day(nowday),2)
mytime=yy+mm+dd
msgbox mytime+"_log"

'FormatDateTime 函数'

'返回表达式,此表达式已被格式化为日期或时间。

'FormatDateTime(Date[, NamedFormat])
'参数

'Date

'必选项。要被格式化的日期表达式。

'NamedFormat

'可选项。指示所使用的日期/时间格式的数值,如果省略,则使用 vbGeneralDate。
'设置

'NamedFormat 参数可以有以下值:
'常数    值    描述
'vbGeneralDate    0    显示日期和/或时间。如果有日期部分,则将该部分显示为短日期格式。如果有时间部分,则将该部分显示为长时间格式。如果都存在,则显示所有部分。
'vbLongDate    1    使用计算机区域设置中指定的长日期格式显示日期。
'vbShortDate    2    使用计算机区域设置中指定的短日期格式显示日期。
'vbLongTime    3    使用计算机区域设置中指定的时间格式显示时间。
'vbShortTime    4    使用 24 小时格式 (hh:mm) 显示时间。

'说明

'下面例子利用 FormatDateTime 函数把表达式格式化为长日期型并且把它赋给 MyDateTime:

'Function GetCurrentDate 'FormatDateTime 把日期型格式化为长日期型。 GetCurrentDate = FormatDateTime(Date, 1) End Function



'下面这些怎么用

'FormatDateTime的用法
'他的声明为:

'function FormatDateTime(const Format: string; DateTime: TDateTime): string;
'overload;

'当然和Format一样还有一种,但这里只介绍常用的第一种,Format参数是一个格式化字符串。DateTime是时间类型。返回值是一种格式化后的字符串,重点来看Format参数中的指令字符

'c 以短时间格式显示时间,即全部是数字的表示
'FormatdateTime('c',now);
'输出为:2004-8-7 9:55:40

'd 对应于时间中的日期,日期是一位则显示一位,两位则显示两位
'FormatdateTime('d',now);
'输出可能为1~31

'dd 和d的意义一样,但它始终是以两位来显示的
'FormatdateTime('dd',now);
'输出可能为01~31

'ddd 显示的是星期几
'FormatdateTime('ddd',now);
'输出为: 星期六

'dddd 和ddd显示的是一样的。 但上面两个如果在其他国家可能不一样。ddddd 以短时间格式显示年月日
'FormatdateTime('ddddd',now);
'输出为:2004-8-7

'dddddd 以长时间格式显示年月日
'FormatdateTime('dddddd',now);
'输出为:2004年8月7日

'e/ee/eee/eeee 以相应的位数显示年
'FormatdateTime('ee',now);
'输出为:04   (表示04年)

'm/mm/mmm/mmmm 表示月
'FormatdateTime('m',now);
'输出为:8
'FormatdateTime('mm',now);
'输出为   08
'FormatdateTime('mmm',now);
'输出为   八月
'FormatdateTime('mmmm',now);
'输出为   八月

'和ddd/dddd 一样,在其他国家可能不同yy/yyyy 表示年
'FormatdateTime('yy',now);
'输出为 04
'FormatdateTime('yyyy',now);
'输出为 2004,

'h/hh,n/nn,s/ss,z/zzz 分别表示小时,分,秒,毫秒

't   以短时间格式显示时间
'FormatdateTime('t',now);
'输出为 10:17

'tt 以长时间格式显示时间
'FormatdateTime('tt',now);
'输出为10:18:46

'ampm 以长时间格式显示上午还是下午
'FormatdateTime('ttampm',now);
'输出为:10:22:57上午

'大概如此,如果要在Format中加普通的字符串,可以用双引号隔开那些特定义的字符,这样普通字符串中如果含特殊的字符就不会被显示为时间格式啦:
'FormatdateTime('"today is" c',now);
'输出为:today is 2004-8-7 10:26:58

'时间中也可以加"-"或"\"来分开日期:
'FormatdateTime('"today is" yy-mm-dd',now);
'FormatdateTime('"today is" yy\mm\dd',now);
'输出为: today is 04-08-07

'也可以用":"来分开时间
'FormatdateTime('"today is" hh:nn:ss',now);
'输出为:today is 10:32:23
'问题补充  2010-04-21 11:13

'自己解决

'Function sbday
'sbday=FormatDateTime(now,2)
'End Function
'yy=right("0000"&year(sbday),4)
'mm=right("00"&month(sbday),2)
'dd=right("00"&day(sbday),2)
'
'dd=day(now)
'yy=year(now)
'mm=month(now)
'datee=formatdatetime(now(),2)
'mm=right("00"&month(nowday),2)
'dd=right("00"&day(nowday),2)

http://youxi.blog.51cto.com/1071101/724324




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2