compare date and time
23 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Kathy
am 25 Mai 2017
Beantwortet: Peter Perkins
am 26 Mai 2017
I need to check of the date is after specific date and time. for example
if (datestr(datenum(datetime))) > (datestr([2017 05 21 12 00 00]
datetime is array of date in the format 22-May-2017 12:00:00
0 Kommentare
Akzeptierte Antwort
Star Strider
am 25 Mai 2017
I would just use the result of datenum.
Comparing strings will probably not work as you would want it to.
0 Kommentare
Weitere Antworten (3)
Kathy
am 25 Mai 2017
1 Kommentar
Star Strider
am 25 Mai 2017
The two dates are a day apart, so that seems correct. You can do numerical operations and logical comparisons on the date numbers, including comparisons other than isequal, the only one you can do with strings (using the strcmp function).
Example —
date_dif = datenum('22-May-2017 12:00:00') - datenum([2017 05 21 12 00 00])
date_dif =
1
If you want to see the complete date number, type :
format long g
in your Command Window.
Steven Lord
am 25 Mai 2017
Don't convert from a datetime into a serial datenum and then to a datestr to compare them. Just compare the datetime variables directly. For instance, with a little nod to Abbott and Costello:
>> pitching = datetime('tomorrow');
>> catching = datetime('today');
>> pitching > catching
ans =
logical
1
0 Kommentare
Peter Perkins
am 26 Mai 2017
All you need is
if theDate > '21-May-2017 12:00:00'
That's it. Unless you are using a fairly old version of MATLAB, stay away from datenum and datestr.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Dates and Time finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!