今天前7天的日期

时间:2018-07-18 08:04:24

标签: string matlab date variables time

我在MATLAB中以字符串形式给出了当前日期。例如,如果今天是'20180703',则我需要7个包含以下内容的字符串:

'20180702'
'20180701'
'20180630' 
'20180629'
'20180628'
'20180627'
'20180626'

2 个答案:

答案 0 :(得分:2)

简单:

t = datetime('20180703', 'InputFormat', 'yyyyMMdd')
t = t - days(1:7)
datestr(t, 'yyyymmdd') 

编辑。 正如 excaza 所指出的,datetimedatestr使用不同的输入格式。因此,第一个函数中的'MM',第二个函数中的'mm'

答案 1 :(得分:0)

我会选择类似的东西:

lastSevenDays = arrayfun(@(offset) datestr(now-offset, 'yyyymmdd'), 1:7, 'UniformOutput', false)

或更晚:

datestr(now - days(1:7), 'yyyymmdd')