主頁 > 知識庫 > 用VBS獲取Unix時間戳的函數(shù)代碼

用VBS獲取Unix時間戳的函數(shù)代碼

熱門標簽:百度地圖標注怎么卸載 海外美發(fā)店地圖標注 新密防封卡外呼系統(tǒng)違法嗎 外呼營銷下單系統(tǒng) 加盟電銷機器人好的品牌 打電話的外呼系統(tǒng)貴不貴 陜西高頻外呼回撥系統(tǒng)哪家好 辦理膠州400電話財稅 前鋒辦理400電話申請
VBS中沒有類似C標準庫中的time函數(shù),怎么獲取Unix時間戳呢?乍一看很簡單:
復制代碼 代碼如下:

Function UnixTime()
UnixTime = DateDiff("s", "01/01/1970 00:00:00", Now())
End Function

一個很想當然的方法,僅僅注意到了“1970年1月1日0時0分0秒”,而忽略了“協(xié)調(diào)世界時”。

協(xié)調(diào)世界時,又稱世界標準時間或世界協(xié)調(diào)時間,簡稱UTC,從英文“Coordinated Universal Time”而來。在中國大陸的本地時間比UTC快8小時,就會寫作UTC+8。如果是在本地時間比UTC時間慢的地區(qū),例如夏威夷的時間是比UTC時間慢10小時,就會寫作UTC-10。

而VBS中的Now()函數(shù)返回的時間是包括時區(qū)的,所以獲取Unix時間戳要做一些修正。
復制代碼 代碼如下:

Function UnixTime()
Set objWMIService = _
GetObject("winmgmts:\\.\root\cimv2")
Set colItems = objWMIService.ExecQuery _
("Select * from Win32_OperatingSystem",,48)
For Each objItem in colItems
TimeZone = objItem.CurrentTimeZone
Next
UnixTime = DateDiff("s", "01/01/1970 00:00:00", Now())
UnixTime = UnixTime - TimeZone * 60
End Function

這才是正確的寫法。
參考鏈接:Epoch Unix Timestamp Conversion Tools
原文:http://demon.tw/programming/vbs-unix-time-stamp.html

標簽:伊春 四平 河南 阜陽 咸陽 牡丹江 武威 梅州

巨人網(wǎng)絡通訊聲明:本文標題《用VBS獲取Unix時間戳的函數(shù)代碼》,本文關鍵詞  用,VBS,獲取,Unix,時間,戳,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關。
  • 相關文章
  • 下面列出與本文章《用VBS獲取Unix時間戳的函數(shù)代碼》相關的同類信息!
  • 本頁收集關于用VBS獲取Unix時間戳的函數(shù)代碼的相關信息資訊供網(wǎng)民參考!
  • 推薦文章