Why does datenum('n​ull','yyyy​mmdd') return an actual date?

5 次查看(过去 30 天)
As part of date manipulation, I need to convert a whole array of string dates into numbers? This array may sometimes contain 'null' elements which I should probably take out first.
I was just curious to why
datenum('null','yyyymmdd')
returns 736330 (i.e. 01-Jan-16) and doesn't fail? For example,
datenum('null')
would return an error

采纳的回答

Jos (10584)
Jos (10584) 2016-12-21
The help of DATENUM states:
Certain formats may not contain enough information to compute a date number. In those cases, hours, minutes, and seconds default to 0, days default to 1, months default to January, and years default to the current year.
Hence the value of 736330. Furthermore, if you do not specify the format identifier (the second argument), the help tells you that
If S is a string, it must be in one of the date formats 0,1,2,6,13,14,15,16,23 as defined by DATESTR.
which is definitely not the case with S being 'null'.

更多回答(0 个)

类别

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