[转] matlab获取时间日期

EmanLee, Eman Lee's Space (blog, website)

在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

 

NumberStringExample
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:MMPM'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

>> clock

ans =

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.其他时间和日期函数或命令
>> date

ans =

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-t

T =

0.2031

>> tic %开始计时

>> toc %计时结束

Elapsed time is 2.751494 seconds.

>> T=today

T =

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

原文:EmanLee, Eman Lee's Space (blog, website)