Suppose the user inserts an integer n and a date string '1/1/2015' (stands for Jan 1 2015), then how do I find the date that is n days before Jan 1 2015?

It seems minus sign doesn't work. Any date function can help?

1 Commento

A string does not work with the minus sign, as you'd expect. You need to convert the string to a number, subtract your n, then convert it back to a date string to output. Take a look at Matlab's date functions to see how to do this.

Risposte (1)

d = datetime('1/1/2015', 'InputFormat', 'M/d/Y');
d - days(n)

2 Commenti

Thanks, it seems it should be y rather than Y. Also, the result returned from d - days(n) also includes time. Anyway, it partially works.
d = datetime('1/1/2015', 'InputFormat', 'M/d/y', 'Format', 'M/d/y');
d - days(n)

Questa domanda è chiusa.

Tag

Richiesto:

il 17 Dic 2015

Chiuso:

il 20 Ago 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by