https://www.cnblogs.com/emanlee/archive/2011/12/19/2293234.html
在MATLAB中得到系统当前日期、时间也是经常用到的内容,由以下函数实现。
1.生成指定格式日期和时间
datestr-生成指定格式日期和时间,是字符型变量。
>> datestr(now) %其中now是获取当前日期和时间
ans =
30-Dec-2009 16:05:16
其中输出格式可由用户指定,共有31种格式,以下是第26种格式,其它格式见下表。
>> datestr(now,26)ans =
2009/12/30
Standard MATLAB Date format definitions
Number
String
Example
0
'dd-mmm-yyyy HH:MM:SS'
01-Mar-2000 15:45:17
1
'dd-mmm-yyyy'
01-Mar-2000
2
'mm/dd/yy'
03/01/00
3
'mmm'
Mar
4
'm'
M
5
'mm'
03
6
'mm/dd'
03/01
7
'dd'
01
8
'ddd'
Wed
9
'd'
W
10
'yyyy'
2000
11
'yy'
00
12
'mmmyy'
Mar00
13
'HH:MM:SS'
15:45:17
14
'HH:MM:SS PM'
3:45:17PM
15
'HH:MM'
15:45
16
'HH:MM
PM'3:45PM
17
'QQ-YY'
Q1-96
18
'QQ'
Q1
19
'dd/mm'
01/03
20
'dd/mm/yy'
01/03/00
21
'mmm.dd,yyyy HH:MM:SS'
Mar.01,2000 15:45:17
22
'mmm.dd,yyyy'
Mar.01,2000
23
'mm/dd/yyyy'
03/01/2000
24
'dd/mm/yyyy'
01/03/2000
25
'yy/mm/dd'
00/03/01
26
'yyyy/mm/dd'
2000/03/01
27
'QQ-YYYY'
Q1-1996
28
'mmmyyyy'
Mar2000
29
(ISO 8601)'yyyy-mm-dd'
2000-03-01
30
(ISO 8601)'yyyymmdd THHMMSS'
20000301T154517
31
'yyyy-mm-dd HH:MM:SS'
2000-03-01 15:45:17
2.获取当前时间的数值 clock-获取当前日期和时间的数值,即clock=[year month day hour minute seconds]。
>>
format short g
>>
clockans =
2009 12 30 16 44 44.687
将clock函数取得的当前日期和时间取整,得
>>
now=fix(ans)now =
2009 12 30 16 44 44
则now(1)=2008, now(2)=5,......,now(6)=44
3.其他时间和日期函数或命令 >>
dateans =
30-Dec-2009
>>
n=datenum('30-dec-2009') %给出0000年到给定时间的天数
n =
734137
>>
now; %获取当前时间至0000年的天数
>>
T=floor(ans)T =
734137
>>
datestr(now)>>
m=datevec(ans) %得到日期和时间向量
m =
2009 12 30 16 24 24
>>
t0=clock;>>
etime(clock,t0) %两次命令之间的时间间隔,之间可进行其它操作,计算消耗时间
ans =
2.0160
>>
t=cputime;>>
T=cputime-tT =
0.2031
>>
tic %开始计时
>>
toc %计时结束
Elapsed time is 2.751494 seconds.
>> T=todayT =
734137
>>[a,b]=weekday(T,'long') %星期函数,给出指定日期是星期几
a =
4
b =
Wednesday
>> d=eomday(2009,12) %给出一个月的最后一天的日期
d =
31
>> d=eomdate(2009,12) %给出一个月的最后一天的天数
d =
734138
>> dom = day('30-Dec-2009') %日期中的天
dom =
30
>> nd=yeardays(2009) %某一年有多少天
nd =
365
>> calendar
Dec 2009
S M Tu W Th F S
0 0 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 0 0