I want to convert one time format into another type

I have date and time data in this form '16-Aug-0022 04:39:55 PM' and I want to convert it in this form '08/16/2022 16:39:00'. Can you provide me with corresponding scripts
thank you in advance

1 Commento

While @Star Strider provides a way to read these, I'd ask how got the malformed date string in the beginning and suggest fixing that issue.

Accedi per commentare.

Risposte (2)

Chunru
Chunru il 20 Ago 2022
Modificato: Chunru il 20 Ago 2022
str = '16-Aug-0022 04:39:55 PM';
t = datetime(str, 'InputFormat', 'dd-MMM-yyyy hh:mm:ss a'); % convert to datetime type
t.Year = t.Year + 2000; % add 2000 year
t.Format = 'MM/dd/yyyy HH:mm:ss'; % change the output format
t
t = datetime
08/16/2022 16:39:55
Another approach —
dt1 = '16-Aug-0022 04:39:55 PM';
dt2 = datetime(dt1, 'InputFormat','dd-MMM-00yy hh:mm:ss a', 'Format','MM/dd/yyyy HH:mm:ss')
dt2 = datetime
08/16/2022 16:39:55
Note the specific 'InputFormat' string that accounts for the first two numbers of the year being '00'. No other conversion required!
.

Categorie

Tag

Richiesto:

il 20 Ago 2022

Commentato:

dpb
il 20 Ago 2022

Community Treasure Hunt

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

Start Hunting!

Translated by