Lua 的os.date()
Lua os.date()
os.date##
- 原型:os.date ([format [, time]])
- 解释:返回一个按format格式化日期、时间的字串或表。
usage##
- 参数格式:
- 由原型可以看出可以省略第二个参数也可以省略两个参数,只省略第二个参数函数会使用当前时间作为第二个参数,如果两个参数都省略则按当前系统的设置返回格式化的字符串,做以下等价替换 os.date() <=> os.date("%c")。
- 如果format以“!”开头,则按格林尼治时间进行格式化。
- 如果format是一个“*t”,将返一个带year(4位),month(1-12), day (1--31), hour (0-23), min (0-59),sec (0-61),wday (星期几, 星期天为1), yday (年内天数)和isdst (是否为日光节约时间true/false)的带键名的表;
- 如果format不是“*t”,os.date会将日期格式化为一个字符串,具体如下:
格式符 | 含义 | 具体示例 |
---|---|---|
%a | 一星期中天数的简写 | (Fri) |
%A | 一星期中天数的全称 | (Wednesday) |
%b | 月份的简写 | (Sep) |
%B | 月份的全称 | (May) |
%c | 日期和时间 | (09/16/98 23:48:10) |
%d | 一个月中的第几天 | (28)[0 - 31] |
%H | 24小时制中的小时数 | (18)[00 - 23] |
%I | 12小时制中的小时数 | (10)[01 - 12] |
%j | 一年中的第几天 | (209)[01 - 366] |
%M | 分钟数 | (48)[00 - 59] |
%m | 月份数 | (09)[01 - 12] |
%P | 上午或下午 | (pm)[am - pm] |
%S | 一分钟之内秒数 | (10)[00 - 59] |
%w | 一星期中的第几天 | (3)[0 - 6 = 星期天 - 星期六] |
%W | 一年中的第几个星期 | (2)0 - 52 |
%x | 日期 | (09/16/98) |
%X | 时间 | (23:48:10) |
%y | 两位数的年份 | (16)[00 - 99] |
%Y | 完整的年份 | (2016) |
%% | 字符串'%' | (%) |
- 新建一个文件命名为datetest.lua编写如下代码:
-
print ("os.date example:\n")
-
print ("format = \"*t\" result:\n")
-
local timetable = os.date("*t", os.time()); -->os.date用法
-
for i, v in pairs(timetable) do
-
print(i, v);
-
end
-
-
print ("\nformat start with \"!\" result:\n")
-
local utimetable = os.date("!*t", os.time()); -->os.date用法
-
for i, v in pairs(utimetable) do
-
print(i, v);
-
end
-
-
print ("\nother format result:\n")
-
print(os.date("today is %c, in %A")) -->os.date用法
-
print(os.date("1060004s is %x", 1060004))
- 运行结果

date.png
总结#
- 注意format "!" 的用法,因为我们的时间(北京)处于东8区,所以两次的结果会差8个小时,从结果中可以看出。
- 注意使用format "*t"返回的table中wday如果是1表示星期天,而使用通用格式时%w用0表示星期天。
https://blog.csdn.net/qq_14914623
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)