convert datestring to datenum problem.

5 Ansichten (letzte 30 Tage)
davit petraasya
davit petraasya am 30 Nov. 2016
Beantwortet: Peter Perkins am 1 Dez. 2016
Hi
Does anybody know how to convert this date to number:
My date is 2016-11-22T13:12:47.320Z Now I am trying to convert it to number.
op_datetime = '2016-11-22T13:12:47.320Z';
format = 'yyyy-mm-ddTHH:MM:SS.FFFZ';
datenum(op_datetime, format)
I tryed like this above, but it is giving error.
Thanks!
  2 Kommentare
Jan
Jan am 30 Nov. 2016
Bearbeitet: Jan am 30 Nov. 2016
Please post the error message.
davit petraasya
davit petraasya am 30 Nov. 2016
DATENUM failed.
Error in ==> andijan at 19
date_num=datenum(op_datetime, format)
Caused by: Error using ==> dtstr2dtnummx
Failed on converting date string to date number.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Jan
Jan am 30 Nov. 2016
Bearbeitet: Jan am 30 Nov. 2016
The trailing 'Z' is not recognized.
op_datetime = '2016-11-22T13:12:47.320Z';
format = 'yyyy-mm-ddTHH:MM:SS.FFF'; % No trailing 'Z'
datenum(op_datetime, format)

Weitere Antworten (1)

Peter Perkins
Peter Perkins am 1 Dez. 2016
In R2014b or later, you should consider using datetimes, not datenums:
>> s = '2016-11-22T13:12:47.320Z'
s =
'2016-11-22T13:12:47.320Z'
>> d = datetime(s,'Format','yyyy-MM-dd''T''HH:mm:ss.SSS''Z''')
d =
2016-11-22T13:12:47.320Z
You might want to create the datetimes with the time zone set to UTC, and people working with timestamps that look like that often care about leap seconds:
>> d = datetime(s,'Format','yyyy-MM-dd''T''HH:mm:ss.SSSX','TimeZone','UTC')
d =
2016-11-22T13:12:47.320Z
>> d = datetime(s,'TimeZone','UTCLeapSeconds')
d =
2016-11-22T13:12:47.320Z

Kategorien

Mehr zu Dates and Time finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by