首页 > 编程笔记 > MATLAB笔记

MATLAB日期和时间处理

MATLAB 中规定了 3 种日期和时间格式——日期字符、序列日期数和日期向量, 分别举例如下:
日期字符 '25-Nov-2019 09:58:59'
日期向量 [2019 11 25 09 58 59]
序列日期数 7.3188e+005

MATLAB日期字串

用日期字串显示日期和时间信息,有多种不同的风格样式。

例如,2019 年 11 月 25 日上午 10:08:22 可以表示为:
25-Nov-2019 10:08:22
也可以表示为:
25/04/19
10:08:22

MATLAB序列日期数

序列日期数表示从一个固定的日期开始到指定的日期经过了多少天。

在 MATLAB 中,序列日期数 1 代表 0000 年的 1 月 1 日;而 0000 年仅是一个参考点,不是特定的一个实际年。

MATLAB 也使用序列时间表示一天中的几分之几,例如,下午 6 点等于 0.75 日。

now() 函数能够得到当前日时的序列日期数:
>> dt = now
dt = 
    7.3710e+05

MATLAB日期向量

日期向量是 MATLAB 一些函数的内部格式,用户不能在计算机中使用它们。日期向量包含元素 [year month day hour minute seconds]。

clock() 函数返回当前日时的日期向量。
>> clock
ans = 
    1.0e+03 *
        2.0180 0.0020 0.0040 0.0210 0.0160 0.0117

转换日期格式

不同日期相互转换的函数有 datenum()、datestr() 和 datevec()。其中,datenum() 是把其他格式转换为序列日期数,datestr() 是把其他格式转换为字符串。datevec() 是把其他格式转换为日期向量。

例如:
>> t = datenum('25/11/2019 10:20')
t = 
    7.3710e+05
>> datevec(t)
ans = 
    2019 11 25 10 20 0

所有教程

优秀文章