time和date两个函数在Lua中实现所有的时钟查询功能。
函数time在没有参数时返回当前时钟的数值(在许多系统中该数值是当前距离某个特定时间的秒数)。
当为函数调用附加一个特殊的时间表时,该函数就是返回距该表描述的时间的数值。
os.time() <== 返回当前系统的日历时间
os.date() <== 返回本地化的时间字符串
os.date("%x", os.time()) <== 返回自定义格式化时间字符串(完整的格式化参数)
os.clock() <== 返回执行该程序CPU花去的时钟秒数
%a | abbreviated weekday name (e.g., Wed) |
%A | full weekday name (e.g., Wednesday) |
%b | abbreviated month name (e.g., Sep) |
%B | full month name (e.g., September) |
%c | date and time (e.g., 09/16/98 23:48:10) |
%d | day of the month (16) [01-31] |
%H | hour, using a 24-hour clock (23) [00-23] |
%I | hour, using a 12-hour clock (11) [01-12] |
%M | minute (48) [00-59] |
%m | month (09) [01-12] |
%p | either "am" or "pm" (pm) |
%S | second (10) [00-61] |
%w | weekday (3) [0-6 = Sunday-Saturday] |
%x | date (e.g., 09/16/98) |
%X | time (e.g., 23:48:10) |
%Y | full year (1998) |
%y | two-digit year (98) [00-99] |
%% | the character '%' |
事实上如果不使用任何参数就调用date,就是以%c的形式输出。这样就是得到经过格式化的完整时间信息。还要注意%x、%X和%c由所在地区和计算机系统的改变会发生变化。如果该字符串要确定下来(例如确定为mm/dd/yyyy),可以使用明确的字符串格式方式(例如"%m/%d/%Y")。