2017-04-25 214 views
1

作为一个例子,我想在LUA中获取(UTC)+0000 UTC日期和时间。在Lua中获取特定的UTC日期和时间

我知道这里有一些答案,但没有一个不是我的答案。解决此问题的一般方法是查找本地时间,然后加上或减去UTC编号,但我不知道我的操作系统时区,因为我的程序出租车在不同的位置运行,我无法从我的开发环境中获取时区。

不久,我如何使用LUA函数获取UTC 0日期和时间?

回答

1

如果你需要生成电子节目指南,则:

local timestamp = os.time() 
local dt1 = os.date("!*t", timestamp) -- UTC 
local dt2 = os.date("*t" , timestamp) -- local 

local shift_h = dt2.hour - dt1.hour + (dt1.isdst and 1 or 0) -- +1 hour if daylight saving 
local shift_m = 100 * (dt2.min - dt1.min)/60 
print(os.date("%Y%m%d%H%M%S ", timestamp) .. string.format('%+05d' , shift_h*100 + shift_m)) 
+0

工作不正确的时区,其不等于小时整数。 –

+0

tnx for comment,我对非整数时区进行更正 –

+0

Nitpicking:半小时的时区通常显示为'+ hh:30',而不是'+ hh50' –

相关问题