合并来自各自变量的日期时间
本示例展示如何从文本文件读取日期时间数据。然后再展示如何将存储在各自变量中的日期时间信息合并到单个日期时间变量中。
创建名为 schedule.txt
且包含以下数据的空格分隔文本文件(要创建该文件,请使用任意文本编辑器,然后复制并粘贴):
Date Name Time 10.03.2015 Joe 14:31 10.03.2015 Bob 15:33 11.03.2015 Bob 11:29 12.03.2015 Kim 12:09 12.03.2015 Joe 13:05
使用 readtable
函数读取该文件。使用 %D
转换设定符,以日期时间值的格式读取第一列和第三列数据。
T = readtable('schedule.txt','Format','%{dd.MM.uuuu}D %s %{HH:mm}D','Delimiter',' ')
T = Date Name Time __________ _____ _____ 10.03.2015 'Joe' 14:31 10.03.2015 'Bob' 15:33 11.03.2015 'Bob' 11:29 12.03.2015 'Kim' 12:09 12.03.2015 'Joe' 13:05
readtable
将返回包含三个变量的表。
更改 T.Date
和 T.Time
变量的显示格式,以查看日期时间信息。由于文件第一列(“Date”)中的数据不含时间信息,因此 T.Date
中生成的日期时间值的时间部分默认设为午夜零点。由于文件第三列(“Time”)中的数据没有关联的日期,因此 T.Time
中生成的日期时间值的日期部分默认设为当前日期。
T.Date.Format = 'dd.MM.uuuu HH:mm'; T.Time.Format = 'dd.MM.uuuu HH:mm'; T
T = Date Name Time ________________ _____ ________________ 10.03.2015 00:00 'Joe' 12.12.2014 14:31 10.03.2015 00:00 'Bob' 12.12.2014 15:33 11.03.2015 00:00 'Bob' 12.12.2014 11:29 12.03.2015 00:00 'Kim' 12.12.2014 12:09 12.03.2015 00:00 'Joe' 12.12.2014 13:05
通过将 T.Date
与 T.Time
中的时间值相加,合并来自两个不同表变量的日期时间信息。使用 timeofday
函数从 T.Time
中提取时间信息。
myDatetime = T.Date + timeofday(T.Time)
myDatetime = 10.03.2015 14:31 10.03.2015 15:33 11.03.2015 11:29 12.03.2015 12:09 12.03.2015 13:05