1.说明
在Matlab中,大多数函数都有这样的功能:创建函数本身具有转换的功能,例如double函数,可以创建双精度浮点数,也可以把输入参数转换成双精度浮点数,再例如string,可以创建字符串,也可以把输入参数转换成字符串。
2.转成double型
把日期时间型转成Matlab默认的双精度浮点型,也即,把日期时间型中的年月日数据提取出来,作为浮点数保持和使用,使用函数yyyymmdd,程序示例如下:
t=datetime('now')
u=yyyymmdd(t) %把年月日提取出转成数值
whos u
运行结果:
t =
datetime
2025-02-13 22:10:22
u =
20250213
Name Size Bytes Class Attributes
u 1x1 8 double

3. duration与double的转换
把日期时间型的时间长度转成Matlab默认的双精度浮点型,程序示例如下:
x=24
d=hours(x) %输入双精度,转成时间型
y=hours(d) %输入时间型,转成双精度
运行结果:
x =
24
d =
duration
24小时
y =
24
4.与字符向量的转换
使用char函数,日期时间型与字符向量可以相互转换,程序示例如下:
chr='20180204 201900'
t=datetime(chr,'InputFormat','yyyyMMdd HHmmss')
chr1=char(t) %转回原字符格式
运行结果:
chr =
'20180204 201900'
t =
datetime
2018-02-04 20:19:00
chr1 =
'2018-02-04 20:19:00'
5.与字符串数组的转换
使用string函数,日期时间型与字符串可以相互转换,程序示例如下:
str=["20180501";"20180502"]
t=datetime(str,'InputFormat','yyyyMMdd')
str1=string(t) %转回原字符格式
运行结果:
str =
2×1 string 数组
"20180501"
"20180502"
t =
2×1 datetime 数组
2018-05-01
2018-05-02
str1 =
2×1 string 数组
"2018-05-01"
"2018-05-02"
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删