Exact Datevec Second Data

This function bypasses the problem with rounded date values, caused by the floating point representa

Al momento, stai seguendo questo contributo

This function bypasses the problem with rounded date values, caused by the floating point representation of the datetime.

If you do datevec(datenum([ 0 0 0 0 1 0 ])) in Matlab it returns [ 0 0 0 0 0 59.999999999999993 ], which can be annoying when, for example, adding a datenum value for 1 minute to a datenum value for 12:23:00 resulting in 12:23:59.999... Now even rounding doesn't help you as it returns 12:23:60 instead of 12:24:00.

If you use this function: exactDatevecSecondData(datenum([ 0 0 0 0 1 0 ])) it returns [ 0 0 0 0 1 0 ], making it the solution to the previous example as it returns 12:24:00.

NOTICE: This function fails if you are working with higher precision then seconds (e.g. milliseconds)

Cita come

Patrick Flick (2026). Exact Datevec Second Data (https://it.mathworks.com/matlabcentral/fileexchange/21260-exact-datevec-second-data), MATLAB Central File Exchange. Recuperato .

Informazioni generali

Compatibilità della release di MATLAB

  • Compatibile con qualsiasi release

Compatibilità della piattaforma

  • Windows
  • macOS
  • Linux
Versione Pubblicato Note della release Action
1.0.0.0