MUSH中GetInfo(304)所得时间是什么格式?
本帖最后由 pos 于 2012-12-16 03:41 AM 编辑手册里说GetInfo()从301到304返回值如下:
301:连接游戏的时间
302:最后一次写入内容到记录文件的时间
303:脚本文件最后一次被更改的时间
304:当前日期/时间
我测试了一下,具体返回值如下:
301 = 1355629712
302 = 1355629712
303 = 1355629772
304 = 1355629778
请问:1355629778 这样的数字是含义?怎么转化成日常日期时间模式?
北大侠客行MUD,中国最好的MUD 回复 1# pos
返回从1970年1月1日的UTC时间的0时0分0秒算起到现在所有的秒数
自己换算去吧。。。 谢谢labaz!{:7_276:} 找了一下资料,还是贴一下,方便以后和我困扰相同问题的同好查阅。
os.time() <== 返回当前系统的日历时间
os.date() <== 返回本地化的时间字符串,这里是"11/28/08 17:23:37"
os.date("%x", os.time()) <== 返回自定义格式化时间字符串(完整的格式化参数),这里是"11/28/08"
os.clock() <== 返回执行该程序CPU花去的时钟秒数,这里是1156.726
附录
完整的格式化参数
这些时间输出的字符串表示是经过本地化的。所以如果是在巴西(葡萄牙语系),"%B" 得到的就是 "setembro"(译者按:大概是葡萄牙语九月?),"%x" 得到的就是 "16/09/98"(月日次序不同)。标记的意义和显示实例总结如下表。实例的时间是在1998年九月16日,星期三,23:48:10。返回值为数字形式的还列出了它们的范围。(都是按照英语系的显示描述的,也比较简单,就不烦了)
%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)
%H hour, using a 24-hour clock (23)
%I hour, using a 12-hour clock (11)
%M minute (48)
%m month (09)
%p either "am" or "pm" (pm)
%S second (10)
%w weekday (3)
%x date (e.g., 09/16/98)
%X time (e.g., 23:48:10)
%Y full year (1998)
%y two-digit year (98)
%% the character '%'
事实上如果不使用任何参数就调用date,就是以%c的形式输出。这样就是得到经过格式化的完整时间信息。
注意%x、%X和%c由所在地区和计算机系统的改变会发生变化。
如果该字符串要确定下来(例如确定为mm/dd/yyyy),可以使用明确的字符串格式方式(例如"%m/%d/%Y")。
页:
[1]