how to find time difference between two times?

226 次查看(过去 30 天)
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?

采纳的回答

Star Strider
Star Strider 2016-12-3
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 个评论
Shawn McCullough
Shawn McCullough 2022-1-26
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

请先登录,再进行评论。

更多回答(1 个)

Andrei Bobrov
Andrei Bobrov 2016-12-3
编辑:Andrei Bobrov 2016-12-3
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

类别

Help CenterFile Exchange 中查找有关 Dates and Time 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by