Matlab 如何将数字日期向量转换为文本日期向量?

Matlab 如何将数字日期向量转换为文本日期向量?,matlab,date,datetime,Matlab,Date,Datetime,我有一个数字向量,对应于以下格式的日期yyyymmdd,即2010年12月24日的日期是20101224。如何将其转换为文本格式,即采用以下格式“mm dd yyyy”?Matlab有一个datestr命令,该命令可能很有用。用法示例: formatOut = 'mm-dd-yyyy'; datestr(now,formatOut) 对于日期,可以将输入的数字转换为字符串,将字符串转换为日期,并使用新格式创建日期字符串 formatIn = 'yyyymmdd'; formatOut = 'm

我有一个数字向量,对应于以下格式的日期yyyymmdd,即2010年12月24日的日期是20101224。如何将其转换为文本格式,即采用以下格式“mm dd yyyy”?

Matlab有一个
datestr
命令,该命令可能很有用。用法示例:

formatOut = 'mm-dd-yyyy';
datestr(now,formatOut)
对于日期,可以将输入的数字转换为字符串,将字符串转换为日期,并使用新格式创建日期字符串

formatIn = 'yyyymmdd';
formatOut = 'mm-dd-yyyy';
inStr = num2str(20101224);    % Skip this step if already a number
outStr = datestr(datenum(inStr, formatIn), formatOut)

Matlab有一个
datestr
命令,可能很有用。用法示例:

formatOut = 'mm-dd-yyyy';
datestr(now,formatOut)
对于日期,可以将输入的数字转换为字符串,将字符串转换为日期,并使用新格式创建日期字符串

formatIn = 'yyyymmdd';
formatOut = 'mm-dd-yyyy';
inStr = num2str(20101224);    % Skip this step if already a number
outStr = datestr(datenum(inStr, formatIn), formatOut)

您应该真正使用
datetime
,而不是转换为字符串

dates = datetime(20100124,'ConvertFrom','yyyymmdd')
第一个输入可以是数字向量,假设它是yyyymmdd格式

如果要指定显示格式,请使用

dates.Format = 'MM-dd-yyyy'
如果您确实需要它们作为字符串,那么可以使用

dates = datestr(dates)

您应该真正使用
datetime
,而不是转换为字符串

dates = datetime(20100124,'ConvertFrom','yyyymmdd')
第一个输入可以是数字向量,假设它是yyyymmdd格式

如果要指定显示格式,请使用

dates.Format = 'MM-dd-yyyy'
如果您确实需要它们作为字符串,那么可以使用

dates = datestr(dates)