当前位置: 移动技术网 > IT编程>脚本编程>VBScript > VBS显示当前标准时间

VBS显示当前标准时间

2017年12月01日  | 移动技术网IT编程  | 我要评论

vbs显示当前标准时间,例如:执行下面的代码则显示:2013-05-11 19:10:11

option explicit
 
dim blndate, blntime
dim dtmdate
dim intday, intformat, inthour, intmin, intmonth, intsec, intutc, intvalid, intyear
dim striso
 
with wscript.arguments
  ' check command line arguments
  if .unnamed.count = 0 then dtmdate = now
  if .unnamed.count > 0 then dtmdate = .unnamed(0)
  if .unnamed.count > 1 then dtmdate = dtmdate & " " & .unnamed(1)
  if .unnamed.count > 2 then dtmdate = dtmdate & " " & .unnamed(2)
  if .unnamed.count > 3 then syntax
  on error resume next
  dtmdate = cdate( dtmdate )
  if err then
    on error goto 0
    syntax
  end if
  on error goto 0
  if not isdate( dtmdate ) then syntax
  intvalid = 0
  blndate = true
  blntime = true
  if .named.exists( "d" ) then
    blndate = true
    blntime = false
    intvalid = intvalid + 1
  end if
  if .named.exists( "t" ) then
    blndate = false
    blntime = true
    intvalid = intvalid + 1
  end if
  if intvalid <> .named.count then syntax
  if intvalid > 1 then syntax
end with
 
' format the output string
intyear = datepartlz( "yyyy", dtmdate )
intmonth = datepartlz( "m", dtmdate )
intday  = datepartlz( "d", dtmdate )
inthour = datepartlz( "h", dtmdate )
intmin  = datepartlz( "n", dtmdate )
intsec  = datepartlz( "s", dtmdate )
if blndate then striso = intyear & "-" & intmonth & "-" & intday
if blntime then striso = striso & " " & inthour & ":" & intmin & ":" & intsec
' display the result
wscript.echo trim( striso )
 
 
function datepartlz( myinterval, mydate )
  ' add a leading zero to the datepart() if necessary
  dim strdatepart
  strdatepart = datepart( myinterval, mydate )
  if len( strdatepart ) < 2 then strdatepart = "0" & strdatepart
  datepartlz = strdatepart
end function
 
 
sub syntax
  wscript.echo vbcrlf _
        & "date2iso.vbs, version 1.02" _
        & vbcrlf _
        & "convert any date/time to iso date/time" _
        & vbcrlf & vbcrlf _
        & "usage: cscript.exe //nologo date2iso.vbs date [ time ] [ /d | /t ]" _
        & vbcrlf & vbcrlf _
        & "where: ""date""  is the date to convert (default: current date/time)" _
        & vbcrlf _
        & "    ""time""  is the optional time to convert" _
        & vbcrlf _
        & "    /d    return date only (default: both date and time)" _
        & vbcrlf _
        & "    /t    return time only (/d and /t are mutually exclusive)" _
        & vbcrlf & vbcrlf _
        & "note:  if the specified date is ambiguous, the current user's date" _
        & vbcrlf _
        & "    and time format is assumed." _
        & vbcrlf & vbcrlf _
        & "written by rob van der woude" _
        & vbcrlf _
        & "http://www.robvanderwoude.com"
  wscript.quit 1
end sub

附上一段vbs校对系统时间的代码给大家参考下

'vbs校准系统时间 by batman 
dim objxml, url, message 
message = "恭喜你,本机时间非常准确无需校对!" 
set objxml = createobject("msxml2.xmlhttp") 
url = "http://open.baidu.com/special/time/" 
objxml.open "get", url, false 
objxml.send() 
do until objxml.readystate = 4 : wscript.sleep 200 : loop 
dim objstr, localdate 
objstr = objxml.responsetext 
localdate = now() 
set objxml = nothing 
dim objreg, regnum 
set objreg = new regexp 
objreg.global = true 
objreg.ignorecase = true 
objreg.pattern = "window.baidu_time\((\d{13,})\)" 
regnum = int(objreg.execute(objstr)(0).submatches(0)) /1000 
dim olddate, bjdate, num, num1 
olddate = "1970-01-01 08:00:00" 
bjdate = dateadd("s", regnum, olddate) 
num = datediff("s", localdate, bjdate) 
if abs(num) >=1 then 
dim dm, dt, tm, objshell 
dm = dateadd("s", num, now()) 
dt = datevalue(dm) 
tm = timevalue(dm) 
if instr(now, "午") then 
dim arr, arr1, h24 
arr = split(tm, " ") 
arr1 = split(arr(1), ":") 
h24 = arr1(0) 
if arr(0) = "下午" then 
h24 = h24 + 12 
else 
if h24 = 12 then h24 = 0 
end if 
tm = h24 & ":" & arr1(1) & ":" & arr1(2) 
end if 
set objshell = createobject("wscript.shell") 
objshell.run "cmd /cdate " & dt, false, true 
objshell.run "cmd /ctime " & tm, false, true 
num1 = abs(datediff("s", now(), bjdate)) 
message = "【校准前】" & vbcrlf _ 
& "标准北京时间为:" & vbtab & bjdate & vbcrlf _ 
& "本机系统时间为:" & vbtab & localdate & vbcrlf _ 
& "与标准时间相差:" & vbtab & abs(num) & "秒" & vbcrlf & vbcrlf _ 
& "【校准后】" & vbcrlf _ 
& "本机系统时间为:" & vbtab & now() & vbcrlf _ 
& "与标准时间相差:" & vbtab & num1 & "秒" 
set objshell = nothing 
end if 
wscript.echo message 

以上所述就是本文的全部内容了,希望对大家学习vbs能够有所帮助。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网