Trying to convert 6 digit number to a date
5 views (last 30 days)
Show older comments
I have a table of values such as '060724' that I want to convert to dates so that I can then sort them by date but when I use datetime() I can't seem to get it to work. So for the example above I would want it to say '6th July 2024' so is there a way to do it? My code is
date = 060724
dates(x,:) = datetime(date,'Locale','en_GB','InputFormat','D-MM-uu');
0 Comments
Accepted Answer
Shivam
on 5 Sep 2024
Edited: Shivam
on 5 Sep 2024
Hi Simeon,
The format 'D-MM-uu' you are using won't work because it doesn't match the structure of your input string. Instead, you should use 'ddMMyy' as the InputFormat since your string represents the day, month, and year without any delimiters.
% Example date string
dateStr = '060724';
% Convert to datetime
dateObj = datetime(dateStr, 'InputFormat', 'ddMMyy', 'Format', 'd MMMM yyyy');
% Display the result
disp(dateObj);
You can visit the documentation of datetime to know more:
Hope it helps.
2 Comments
Walter Roberson
on 5 Sep 2024
Note too that the input to datetime() is a character vector (or string) rather than numeric.
datetime() does have the ability to convert some kinds of numeric values, using the ConvertFrom option, but mmddyy is not one of the supported options. (yyyymmdd is a supported option though.)
More Answers (0)
See Also
Categories
Find more on Calendar in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!