DateStr2Num

Version 1.4.0.0 (14,3 KB) von Jan
Convert date string to date number - C-Mex: much faster than DATENUM
3,2K Downloads
Aktualisiert 14. Jun 2018

Lizenz anzeigen

DATESTR2NUM - Fast conversion of DATESTR to DATENUM
The builtin DATENUM command is very powerful, but if the input is known to be valid and formatted exactly, a specific MEX can be much faster:
For single strings DateStr2Num is about 120 times faster than DATENUM, for a {1 x 10000} cell string, the speed up factor is 300 to 600(!), (Matlab 2011b/64, MSVC 2008).
D = DateStr2Num(S, F)
INPUT:
S: String or cell string in DATESTR(F) format.
In opposite to DATENUM the validity of the input string is *not* checked.
F: Integer number defining the input format. Accepted:
0: 'dd-mmm-yyyy HH:MM:SS' 01-Mar-2000 15:45:17
1: 'dd-mmm-yyyy' 01-Mar-2000
29: 'yyyy-mm-dd' 2000-03-01
30: 'yyyymmddTHHMMSS' 20000301T154517
31: 'yyyy-mm-dd HH:MM:SS' 2000-03-01 15:45:17
230: 'mm/dd/yyyyHH:MM:SS' 12/24/201515:45:17
231: 'mm/dd/yyyy HH:MM:SS' 12/24/2015 15:45:17
240: 'dd/mm/yyyyHH:MM:SS' 24/12/201515:45:17
241: 'dd/mm/yyyy HH:MM:SS' 24/12/2015 15:45:17
1000: 'dd-mmm-yyyy HH:MM:SS.FFF' 01-Mar-2000 15:45:17.123
1030: 'yyyymmddTHHMMSS.FFF' 20000301T154517.123
OUTPUT:
D: Serial date number.
EXAMPLE:
C = {'2010-06-29 21:59:13', '2010-06-29 21:59:13'};
D = DateStr2Num(C, 31)
>> [734318.916122685, 734318.916122685]
Equivalent Matlab command:
D = datenum(C, 'yyyy-mm-dd HH:MM:SS')
The C-file must be compiled before using. This is done automatically at the first call of this function.
Pre-compiled Mex files can be downloaded from: http://www.n-simon.de/mex

Tested: Matlab 6.5, 7.7, 7.8, 7.13, 32/64bit, WinXP/7
Compiler: LCC 2.4/3.8, BCC 5.5, Open Watcom 1.8, MSVC 2008
Compatibility to MacOS, Linux, 64 bit is assumed, but not tested.

See also: DateConvert (Jan Simon)
http://www.mathworks.com/matlabcentral/fileexchange/25594

Zitieren als

Jan (2024). DateStr2Num (https://www.mathworks.com/matlabcentral/fileexchange/28093-datestr2num), MATLAB Central File Exchange. Abgerufen.

Kompatibilität der MATLAB-Version
Erstellt mit R2016b
Kompatibel mit allen Versionen
Plattform-Kompatibilität
Windows macOS Linux
Kategorien
Mehr zu Dates and Time finden Sie in Help Center und MATLAB Answers

Community Treasure Hunt

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

Start Hunting!
Version Veröffentlicht Versionshinweise
1.4.0.0

Month names considered in upper and lower case.

1.3.0.0

4 new formats, automatic compilation

1.2.0.0

New format "1000": dd-mmm-yyyy HH:MM:SS.FFF
Old format "300" called "1030" now.

1.1.0.0

New integer arithmetics for >50% more speed. Support of milliseconds in yyyymmddTHHMMSS.FFF format.

1.0.0.0