Lua常⽤时间函数
时间函数
-- 获取当前的格林尼治时间print(os.time())
-- 获取当前时间的字符串表⽰,形如:11/28/08 10:28:37print(os.date())
-- 获取当前⽇期的字符串表⽰,形如:11/28/08print(os.date(\"%x\", os.time()))
-- 获取当前时间的字符串表⽰,形如:10:28:37print(os.date(\"%X\", os.time()))
-- 获取当前时间的字符串表⽰,形如:10/10/13 10:28:37print(os.date(\"%c\", os.time()))
-- 获取当前时间的字符串表⽰,形如:2013-10-10 10:28:37print(os.date(\"%Y-%m-%d %H:%M:%S\", os.time()))
--函数os.clock返回执⾏该程序CPU花去的时钟秒数local x1 = os.clock()local s = 0
for i = 1, 10000000 dos = s + iend
local x2 = os.clock()
print(string.format(\"elapsed time: %.2f\\n\", x2 - x1))
local T2009_StartTime = { year=2013, month=2, day=9, hour=0, min=0, sec=0 }local T2009_EndTime = { year=2013, month=2, day=17, hour=23, min=59, sec=59 }
T2009_AvtivityTime = { startTime = os.time(T2009_StartTime), endTime = os.time(T2009_EndTime) }
print('加载礼包活动成功,活动时间:' .. os.date('%c', T2009_AvtivityTime.startTime) ..'~' .. os.date('%c', T2009_AvtivityTime.endTime))
temp = os.date(\"*t\", os.time())print(temp)--[[则会产⽣表
{year = 1998, month = 9, day = 16, yday = 259, wday = 4, hour = 23, min = 48, sec = 10, isdst = false}--]]
字符串与时间戳转化
时间戳转成格式化字符串
local timestamp = 1561636137;
local strDate = os.date(\"%Y/%m/%d %H:%M:%S\", timestamp)print(\"strDate = \", strDate);
字符串转化成时间戳
分离
local strDate = \"2019/06/27 19:48:57\"
local _, _, y, m, d, hour, min, sec = string.find(strDate, \"(%d+)/(%d+)/(%d+)%s*(%d+):(%d+):(%d+)\"); --分离字符串 前两个不知道是什么?
print(y, m, d, hour, min, sec);
转化
--转化为时间戳
local timestamp = os.time({year=y, month = m, day = d, hour = hour, min = min, sec = sec});print(\"timestamp = \", timestamp);