Time 时间
CBrother提供了两个内置函数和一个Time类来处理时间和日期
内置函数
函数 | 描述 | 用法 |
---|---|---|
time() | 获取当前时间戳(单位:秒) | var t = time() |
GetMillSecond() | 获取毫秒时间(win,mac是开机时间,liunx为程序运行时间,会溢出) | var t = GetMillSecond() |
Time 类
var myTime = new Time(); //不传参数表示获取当前时间初始化Time类
var myTime2 = new Time(1514739661); //传入时间戳(秒),则用时间戳初始化Time类
函数 | 描述 | 参数 | 返回值 | 用法 |
---|---|---|---|---|
year() | 获取自1900年后经过的年份。 | 无 | 年份数字 | var nowYear = myTime.year() |
mon() | 获取月份 | 无 | 月份[0-11] | var nowMon = myTime.mon() |
mday() | 获取本月第几天 | 无 | 天数[1-31] | var nowDay = myTime.mday() |
hour() | 获取当前第几个小时 | 无 | 小时[0-23] | var nowHour = myTime.hour() |
min() | 获取分钟数字 | 无 | [0-59] | var nowMin = myTime.min() |
sec() | 获取秒数 | 无 | [0-59] | var nowSec = myTime.sec() |
wday() | 获取星期几 | 无 | [0-6],0是周天 | var nowWeek = myTime.wday() |
yday() | 获取一年中的第几天 | 无 | [0-365] | var yearDay = myTime.yday() |
setYear(y) | 修改年份,1900年后经过的年 | 要修改的值 | 无 | myTime.setYear(1) |
setMon(m) | 修改月份 | [0-11] | 无 | myTime.setMon(1) |
setMDay(d) | 修改月份中的天数 | [1-31] | 无 | myTime.setMDay(1) |
setHour(h) | 修改小时数 | [0-23] | 无 | myTime.setHour(1) |
setMin(m) | 修改分钟数 | [0-59] | 无 | myTime.setMin(1) |
setSec(s) | 修改秒数 | [0-59] | 无 | myTime.setSec(1) |
setWDay(w) | 修改星期几 | [0-6],0是周天 | 无 | myTime.setWDay(1) |
setYDay(yd) | 修改一年中的第多少天 | [0-365] | 无 | myTime.setYDay(1) |
time() | 转化成秒级时间戳 | 无 | 时间戳 | var thisTime = myTime.time() |
strftime(format) | 按照format格式化当前Time类 | format:格式 | 字符串 | var timeStr = myTime.strftime("Now is %Y/%m/%d %H:%M:%S") |
strptime(timestr,format) | 用timestr按照format格式初始化Time类 | timeStr:时间字串,format:格式 | 无 | myTime.strptime("Now is 2018/1/1 1:1:1","Now is %Y/%m/%d %H:%M:%S") |
例子:
function main(parm)
{
var myTime = new Time(1514739661); // 2018/1/1 1:1:1
print "year:" + myTime.year();
print "mon:" + myTime.mon();
print "mday:" + myTime.mday();
print "hour:" + myTime.hour();
print "min:" + myTime.min();
print "sec:" + myTime.sec();
print "wday:" + myTime.wday();
print "yday:" + myTime.yday();
var thisTime = myTime.time();
print "time is:" + thisTime;
myTime.setYear(myTime.year() + 1);
myTime.setMon(myTime.mon() + 1);
myTime.setMDay(myTime.mday() + 1);
myTime.setHour(2);
myTime.setMin(2);
myTime.setSec(2);
var setTime = myTime.time();
print "after set time is:" + setTime;
print "timestr is:" + myTime.strftime("%Y/%m/%d %H:%M:%S");
}
结果:
year:118
mon:0
mday:1
hour:1
min:1
sec:1
wday:1
yday:0
time is:1514739661
after set time is:1549044122
timestr is:2019/02/02 02:02:02
时间字符串的格式
符号 | 描述 |
---|---|
%y | 两位数的年份表示(00-99) |
%Y | 四位数的年份表示(000-9999) |
%m | 月份(01-12) |
%d | 月内中的一天(0-31) |
%H | 24小时制小时数(0-23) |
%I | 12小时制小时数(01-12) |
%M | 分钟数(00-59) |
%S | 秒(00-59) |
%a | 本地简化星期名称 |
%A | 本地完整星期名称 |
%b | 本地简化的月份名称 |
%B | 本地完整的月份名称 |
%c | 本地相应的日期表示和时间表示 |
%p | 本地A.M.或P.M.的等价符 |
%U | 一年中的星期数(00-53)星期天为星期的开始 |
%w | 星期(0-6),星期天为星期的开始 |
%W | 一年中的星期数(00-53)星期一为星期的开始 |
%x | 本地相应的日期表示 |
%X | 本地相应的时间表示 |
%Z | 当前时区的名称 |
%% | %号本身 |