2013-02-22 263 views
3

我是Matlab新手。我试图使用datenum函数来解析日期字符串并将其转换为时间戳(如在Java中,getTime())。然后,我想在几秒钟内找出两个日期之间的差异。Matlab将日期字符串转换为使用datenum问题的时间戳

datenum('2013-02-21T00:39:19Z','yyyy-mm-ddTHH:MM:ss')-datenum('2013-02-21T00:34:19Z','yyyy-mm-ddTHH:MM:ss') 

如果我运行上面的函数,我得到0.0035,我不知道它是什么样的价值。

有人可以帮忙吗?

谢谢!

回答

6

Matlab help says:

甲序列日期数字代表整数和分数数量的 天从一个固定的,预先设定的日期(月0,0000)。

我认为你的答案是也许0.0035天因此要获得秒我猜它

ans*24*60*60 
+1

感谢上帝......我已经搜索了matlab date2num“enconding”几个小时,认为它是复杂的。我不相信我没有读过。先生非常感谢您! (我想我可能需要停一阵子哈哈哈) – Werner 2013-05-25 20:36:32

6

你的结果是datenum格式丹说。但是,如果你想在几秒钟内找到经过的时间,那么就有一个功能可以完全按照你的要求进行。

您可以使用etime来查找两个日期向量之间的已用时间。

d1 = datevec('2013-02-21T00:39:19Z','yyyy-mm-ddTHH:MM:ss'); 
d2 = datevec('2013-02-21T00:34:19Z','yyyy-mm-ddTHH:MM:ss'); 

elapsedTime = etime(d1,d2) % Elapsed time in seconds 

elapsedTime = 

    300