Datetime to string format issue
14 次查看(过去 30 天)
显示 更早的评论
Hi
I have a datetime array as shown below.
timearray_segmenta =
struct with fields:
start: [2022-09-06T00:00:00 2022-09-16T00:00:00 2022-09-26T00:00:00 2022-10-06T00:00:00 2022-10-16T00:00:00 2022-10-26T00:00:00 … ]
stop: [2022-09-15T23:59:59 2022-09-25T23:59:59 2022-10-05T23:59:59 2022-10-15T23:59:59 2022-10-25T23:59:59 2022-11-04T23:59:59 … ]
The formate of the date time has to be as shown above, this was achived using:
timearray.Format = 'yyyy-MM-dd''T''HH:mm:ss';
I need to convert this datetime structure as a string, so i am using the following:
K>> datestr(timearray_segmenta.start)
ans =
7×11 char array
'06-Sep-2022'
'16-Sep-2022'
'26-Sep-2022'
'06-Oct-2022'
'16-Oct-2022'
'26-Oct-2022'
'05-Nov-2022'
The formate changes, if i was to reassign the formate i get the following:
datestr(timearray_segmenta.start,timearray.Format )
ans =
7×21 char array
'2022-00-06'T'00:09:00'
'2022-00-16'T'00:09:00'
'2022-00-26'T'00:09:00'
'2022-00-06'T'00:10:00'
'2022-00-16'T'00:10:00'
'2022-00-26'T'00:10:00'
'2022-00-05'T'00:11:00'
What needs to change in my code?
1 个评论
Stephen23
2022-11-19
"What needs to change in my code?"
Get rid of deprecated and superfluous DATESTR. Just set the DATETIME format:
采纳的回答
Steven Lord
2022-11-19
Don't use datestr. As its documentation page states, it is not recommended. Use string or char instead.
dt = datetime('now');
dt.Format = 'yyyy-MM-dd''T''HH:mm:ss'
s = string(dt)
0 个评论
更多回答(2 个)
dpb
2022-11-19
>> datetime(start,'InputFormat','yyyy-MM-dd''T''HH:mm:ss')
ans =
datetime
06-Sep-2022
>> datetime(start,'InputFormat','yyyy-MM-dd''T''HH:mm:ss','Format','yyyy-MM-dd''T''HH:mm:ss')
ans =
datetime
2022-09-06T00:00:00
>> string(ans)
ans =
"2022-09-06T00:00:00"
>>
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Dates and Time 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!