convert datestring to datenum problem.

6 ビュー (過去 30 日間)
davit petraasya
davit petraasya 2016 年 11 月 30 日
回答済み: Peter Perkins 2016 年 12 月 1 日
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 件のコメント
Jan
Jan 2016 年 11 月 30 日
編集済み: Jan 2016 年 11 月 30 日
Please post the error message.
davit petraasya
davit petraasya 2016 年 11 月 30 日
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.

サインインしてコメントする。

採用された回答

Jan
Jan 2016 年 11 月 30 日
編集済み: Jan 2016 年 11 月 30 日
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)
  1 件のコメント
davit petraasya
davit petraasya 2016 年 11 月 30 日
Thanks Simon, it works!

サインインしてコメントする。

その他の回答 (1 件)

Peter Perkins
Peter Perkins 2016 年 12 月 1 日
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

カテゴリ

Help Center および File ExchangeDates and Time についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by