Effacer les filtres
Effacer les filtres

how to find time difference between two times?

176 vues (au cours des 30 derniers jours)
siki
siki le 3 Déc 2016
Commenté : Star Strider le 27 Jan 2022
t1={'01-Oct-2011 11:12:00'};
t2={'01-Oct-2011 11:15:00'};
t11=datenum(t1(:));
t22=datenum(t2(:));
I have two times. How can i find difference in seconds between them?

Réponse acceptée

Star Strider
Star Strider le 3 Déc 2016
The etime function does exactly what you want. You have to convert your times to date vectors first:
t1={'01-Oct-2011 11:12:00'};
t2={'01-Oct-2011 11:15:00'};
t11=datevec(datenum(t1));
t22=datevec(datenum(t2));
time_interval_in_seconds = etime(t22,t11)
time_interval_in_seconds =
180.0000
  2 commentaires
Shawn McCullough
Shawn McCullough le 26 Jan 2022
this is great! thank you!!
it also works if you need to include milliseconds:
>> t1 = 'January 02, 2000 11:59:28.000';
>> t2 = 'January 02, 2000 17:22:46.486';
>> t1 = datevec(t1,'mmmm dd, yyyy HH:MM:SS.FFF');
>> t2 = datevec(t2,'mmmm dd, yyyy HH:MM:SS.FFF');
>> duration = etime(t2,t1)
duration =
1.939848600000000e+04
Star Strider
Star Strider le 27 Jan 2022
@Shawn McCullough — My pleasure!

Connectez-vous pour commenter.

Plus de réponses (1)

Andrei Bobrov
Andrei Bobrov le 3 Déc 2016
Modifié(e) : Andrei Bobrov le 3 Déc 2016
t1={'01-Oct-2011 11:12:00'}; t2={'01-Oct-2011 11:15:00'};
out = seconds(diff(datetime([t1;t2])))
or
t1={'01-Oct-2011 11:12:00'}; t2={'01-Oct-2011 11:15:00'};
out = diff(datenum([t1;t2]))*24*3600

Catégories

En savoir plus sur Dates and Time dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by