datestr problem with month

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?

 采纳的回答

Stephen23
Stephen23 2018-11-20
编辑:Stephen23 2018-11-20

0 个投票

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)

更多回答(1 个)

Use datetime
str='04/04/2018'
Date= datetime(str,'format','dd/MM/yyyy')

类别

帮助中心File Exchange 中查找有关 Dates and Time 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by