为什么在Matlab中两个格式不同的日期时间不相等?

时间:2018-07-10 13:59:00

标签: matlab datetime logical-operators equality

我正在运行Matlab R2014b。我有两个datetime变量,在我看来应该是相等的,是什么导致逻辑等于在此处返回FALSE?

testDate = textscan('20171231', '%{yyyymmdd}D')
myDate = testDate{1,1}
myDate == datetime(2017,12,31)

这将返回:

ans = 0

1 个答案:

答案 0 :(得分:3)

As excaza mentions in a comment,在调用textscan时,您必须使用'MM'正确表示而不是分钟:< / p>

>> testDate = textscan('20171231', '%{yyyyMMdd}D');
>> myDate = testDate{1,1};
>> myDate == datetime(2017,12,31)

ans =

  logical

   1

有关datetime格式属性的更多信息,请参见here