国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > VBScript > 正文

用VBS獲取Unix時間戳的函數代碼

2020-06-26 18:25:28
字體:
來源:轉載
供稿:網友
UNIX時間,或稱POSIX時間是UNIX或類UNIX系統使用的時間表示方式:從協調世界時1970年1月1日0時0分0秒起至現在的總秒數,不包括閏秒。
 
VBS中沒有類似C標準庫中的time函數,怎么獲取Unix時間戳呢?乍一看很簡單: 
復制代碼代碼如下:

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

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

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

而VBS中的Now()函數返回的時間是包括時區的,所以獲取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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 越西县| 三亚市| 安徽省| 如东县| 简阳市| 霸州市| 桃源县| 铜川市| 丹巴县| 珠海市| 获嘉县| 嘉荫县| 唐河县| 鄄城县| 长宁区| 乌兰县| 琼海市| 新河县| 邓州市| 博罗县| 黎川县| 比如县| 东港市| 靖安县| 哈巴河县| 嘉黎县| 林甸县| 新泰市| 三亚市| 巨野县| 门头沟区| 伊宁市| 罗江县| 荣成市| 墨脱县| 东乌珠穆沁旗| 南安市| 马龙县| 太仆寺旗| 新乐市| 谢通门县|