我有一个数字向量对应日期格式为yyyymmdd,即2010年12月24日为20101224.如何将其转换为文本格式,即采用以下格式'mm-dd-yyyy'?< / p>
答案 0 :(得分:4)
您应该使用datetime
而不是转换为字符串,
dates = datetime(20100124,'ConvertFrom','yyyymmdd')
第一个输入可以是数字向量,假设它是yyyymmdd格式。
如果您想要指定显示格式,请使用
dates.Format = 'MM-dd-yyyy'
如果你真的需要它们作为字符串,那么你可以使用
dates = datestr(dates)
答案 1 :(得分:1)
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)