主要用于时间相关的操作和转换,包括:
- 从Unix时间戳解析日期和时间。
- 获取和调整当前时间。
- 提供多种时间戳获取方式以适应不同场景(如秒或毫秒级的时间戳)。
将Unix时间戳转换为UTC时间和本地时间:
- 通过函数
UnixToUTC
或直接计算,将一个Unix时间戳(以秒为单位)转换为1970年开始的UTC时间。 - 将UTC时间进一步调整为本地时区时间。
; MsgBox % SubStr(1668502819058, 1, 10) ; 只需要前10位数字 ; 腾讯获取当前时间API:http://vv.video.qq.com/checktime?otype=json MsgBox, % UnixToUTC(1668502819058) UnixToUTC(unixTime) { time := 1970 time += SubStr(unixTime, 1, 10), s diff -= A_NowUTC, h time += diff, h Return time } ; Tebayaki+ahk2 提供的 取Unix 时间戳 这个返回10位数。 回答:少除几个0不就好了 DllCall("GetSystemTimeAsFileTime", "uint64*", currentTime) ; MsgBox % Round(currentTime / 10000000) - 11644473600 /* UnixToUTC(unixTime) { unixTimeX := SubStr(unixTime, 1, 10) if unixTimeX is integer { time := 1970 time += unixTimeX, s diff -= A_NowUTC, h time += diff, h } Return time } */ /* MsgBox % UnixToUTC(1668502426) UnixToUTC(unixTime){ time:=1970 time+=unixTime, s return time } */ unixTime := SubStr(1668502819058, 1, 10) time := 1970 time += unixTime, s utcTime := time diff -= A_NowUTC, h time += diff, h localTime := time MsgBox, % "utc: " . utcTime . "`n本地时区: " . localTime ; 淘宝:http://api.m.taobao.com/rest/api3.do?api=mtop.common.getTimestamp ; 京东:https://api.m.jd.com/client.action?functionId=queryMaterialProducts&client=wh5 MsgBox % r := A_NowUTC r -= 19700101000000, s msgbox , % r * 1000 + A_MSec
声明:站内资源为整理优化好的代码上传分享与学习研究,如果是开源代码基本都会标明出处,方便大家扩展学习路径。请不要恶意搬运,破坏站长辛苦整理维护的劳动成果。本站为爱好者分享站点,所有内容不作为商业行为。如若本站上传内容侵犯了原著者的合法权益,请联系我们进行删除下架。
评论(0)