我希望Lua中某個特定時區的時間和日期格式化,os.date("%a %b %d, %H:%M")
會將其返回。Lua - 獲取特定時區的時間和日期
我知道os.date("!%a %b %d, %H:%M")
(添加感嘆號「!」)給了我UTC時間,但我該如何從那裏移動並抵消所需的時間?
在我的情況下,所需的時區是UTC + 08:00。
我希望Lua中某個特定時區的時間和日期格式化,os.date("%a %b %d, %H:%M")
會將其返回。Lua - 獲取特定時區的時間和日期
我知道os.date("!%a %b %d, %H:%M")
(添加感嘆號「!」)給了我UTC時間,但我該如何從那裏移動並抵消所需的時間?
在我的情況下,所需的時區是UTC + 08:00。
os.date接受兩個參數:
os.date ([format [, time]])
time
的參數 - 以秒 - 可用於抵消返回值。
由於os.time()
以秒爲單位返回當前時間,您可以簡單地添加您的偏移量(8),乘以一分鐘內的秒數(60),再乘以一秒鐘的分鐘數(60)。
os.date("!%a %b %d, %H:%M", os.time() + 8 * 60 * 60)
如果您在UTC是+ 01:00,這些都是種輸出,你會得到:
> os.date("%a %b %d, %H:%M")
Wed Mar 16, 09:33
> os.date("!%a %b %d, %H:%M")
Wed Mar 16, 08:33
> os.date("!%a %b %d, %H:%M", os.time() + 8 * 60 * 60)
Wed Mar 16, 16:33
如果偏移不充分小時,你必須使用十進制當然數量。 例如:UTC + 07:30將在方程式中爲7.5
。
夏時制呢? –
有關完整的庫,請參閱https://github.com/daurnimator/luatz。 – lhf