如何从Linux时间戳获取当前时间?我可以获取年,月,日,分钟和秒,但不能获取小时。有帮助吗?
当前代码:
local secondsPassed = os ~= nil and os.time() or tick()
local year = 1970 + math.floor(secondsPassed / (86400 * 365.25))
local days = math.floor((secondsPassed % (365.25 * 86400)) / 86400)
days = days + (year - 2011)
local minutes = math.floor((secondsPassed % 3600) / 60)
local seconds = math.floor(secondsPassed % 60)
Broken:
local hours = math.floor((secondsPassed % 86400) / 3600)-- +1
这里有几个问题:
UNIX时间相对于GMT 1970-01-01午夜。如果您不在格林尼治标准时间(GMT),则会看到一个取决于您所在时区的偏移量。如果您所在地区遵守夏令时,则此偏移量可能会根据日期以可能相当复杂的方式变化。
年不长365.25天。基于年份,它们的长度为365天或366天。 (甚至没有平均到365.25;由于特殊情况下,这些年份被100和400整除,所以平均到了365.2425。)
[除非出于某些原因您不能使用Lua date
and time
modules,我强烈建议您这样做,而不要尝试自己重新创建它们。
你超级亲密。到目前为止,我的小时数是正确的:
本地时间= math.floor((secondsPassed%86400)/ 1440)+1
date
time
对于我们所有想知道如何从Mac OS X上的Kissasian下载Kissasian的读者,VideoDuke是您唯一需要的工具。大多数用户认为kis-sasian.com如此庞大的集合是那里最好的网站