MATLAB: Datestr problem with month

datestrdatetime

I have a variable T.Date with 5173x 1 datetime, '04/04/2018' '05/04/2018' etc…
when i use the code
Date= datestr(T.Date,'dd/MM/yyyy');
or
formatOut = 'dd/MM/yyyy'
Date= datestr(T.Date, formatOut)
I get 5173 x 10 char '04/00/2018' and so on for all the dates. The month is 00 for every output.
why is this happening and what can I do to fix this?

Best Answer

If T.Date really is a datetime array, then use string to convert it to a string array. Make sure that you have set the datetime's format property first:
T.Date.format = 'dd/MM/yyyy'
S = string(T.Date)
Or use cellstr:
C = cellstr(T.Date)
Or use char:
C = char(T.Date)