datetime

Массивы, которые представляют моменты времени

Описание

Массивы datetime представляют моменты времени с помощью преждевременного календаря ISO. значения datetime имеют гибкие форматы отображения до точности наносекунды и могут составлять часовые пояса, летнее время и секунды прыжка.

Создание

Синтаксис

t = datetime
t = datetime(relativeDay)
t = datetime(DateStrings)
t = datetime(DateStrings,'InputFormat',infmt)
t = datetime(DateVectors)
t = datetime(Y,M,D)
t = datetime(Y,M,D,H,MI,S)
t = datetime(Y,M,D,H,MI,S,MS)
t = datetime(X,'ConvertFrom',dateType)
t = datetime(___,Name,Value)

Описание

t = datetime возвращает скалярный массив datetime, соответствующий текущей дате и время.

пример

t = datetime(relativeDay) использует дату, заданную relativeDay. Входом relativeDay может быть 'today', 'tomorrow', 'yesterday' или 'now'.

t = datetime(DateStrings) создает массив значений datetime из текста в DateStrings, представляющем моменты времени.

пример

t = datetime(DateStrings,'InputFormat',infmt) интерпретирует DateStrings с помощью формата, заданного infmt. Все значения в DateStrings должны иметь тот же формат.

Чтобы избежать неоднозначностей между аналогичными форматами, задайте 'InputFormat' и его соответствующее значение, infmt.

пример

t = datetime(DateVectors) создает вектор-столбец значений datetime от векторов даты в DateVectors.

t = datetime(Y,M,D) создает массив значений datetime для соответствующих элементов Y, M и D (год, месяц, день) массивы. Массивы должны быть одного размера (или любой может быть скаляром). Также можно задать входные параметры как вектор даты, [Y M D].

t = datetime(Y,M,D,H,MI,S) также создает H, MI и S (час, минута, и второй) массивы. Все массивы должны быть одного размера (или любой может быть скаляром). Также можно задать входные параметры как вектор даты, [Y M D H MI S].

t = datetime(Y,M,D,H,MI,S,MS) добавляет MS (миллисекунда) массив. Все массивы должны быть одного размера (или любой может быть скаляром).

пример

t = datetime(X,'ConvertFrom',dateType) преобразовывает числовые значения в X к массиву datetime t. Аргумент dateType задает тип значений в X.

Если X содержит времена POSIX® или даты Джулиана, которые представляют местное время, то задают зону подходящего времени для t с помощью аргумента пары "имя-значение" 'TimeZone'. Если вы не задаете часовой пояс, то времена POSIX или даты Джулиана в X обработаны как времена UTC, не местное время.

t = datetime(___,Name,Value) задает дополнительные опции с помощью одного или нескольких аргументов пары "имя-значение", в дополнение к любому из входных параметров в предыдущих синтаксисах. Например, можно задать формат отображения t с помощью аргумента пары "имя-значение" 'Format'.

Для лучшей производительности при создавании стоимости datetime из текста задайте или 'Format' или 'InputFormat' и его соответствующее значение, infmt.

Входные параметры

развернуть все

День относительно текущей даты, заданной как одно из следующих значений.

Значение relativeDayОписание
'yesterday'Дата предыдущего дня, в полночь
'today'Текущая дата, в полночь
'tomorrow'Дата следующего дня, в полночь
'now'Текущая дата и время

Текст, представляющий даты и времена, заданные как символьный массив, массив ячеек из символьных векторов или массив строк. Функция datetime сначала пытается совпадать с форматом DateStrings к распространенным форматам. Если вы знаете формат, задаете 'InputFormat' и его соответствующее значение infmt или аргумент пары "имя-значение" 'Format'.

Пример: '24-Oct-2014 12:45:07'

Пример: {'15-Oct-2013','20-Nov-2014'}

Пример: ["11-Nov-2016","12-Dec-2016"]

Типы данных: char | cell | string

Формат входного текста, представляющего даты и времена, заданные как вектор символов или скаляр строки, который содержит идентификаторы буквы:

  • Если infmt не включает спецификатор даты, то datetime принимает, что значения в DateStrings происходят в течение текущего дня.

  • Если infmt не включает спецификатор времени, то datetime принимает, что значения в DateStrings происходят в полночь.

Эта таблица показывает несколько общих форматов ввода и включает примеры отформатированного входа для даты, суббота, 19 апреля 2014 в 9:41:06.12345 PM в Нью-Йорке.

Значение infmtПример
'yyyy-MM-dd'2014-04-19
'dd/MM/yyyy'19/04/2014
'dd.MM.yyyy'19.04.2014
'yyyy年 MM月 dd日'2014年 04月 19日 (Символы для японской локали, ja_JP)
'MMMM d, yyyy'April 19, 2014
'eeee, MMMM d, yyyy h:mm a'Saturday, April 19, 2014 9:41 PM
'MMMM d, yyyy HH:mm:ss Z'April 19, 2014 21:41:06 -0400
'yyyy-MM-dd''T''HH:mmXXX'2014-04-19T21:41-04:00
'yyyy-MM-dd HH:mm:ss.SSS'2014-04-19 21:41:06.123

Для входного текста, который представляет доли секунды, можно задать infmt максимум с девятью символами S, чтобы указать на цифры доли секунды. Например, 'yyyy-MM-dd HH:mm:ss.SSS' является форматом для текста, который представляет даты и времена точности миллисекунды.

Для полного списка допустимых идентификаторов буквы смотрите свойство Format для массивов datetime.

Примечание

Идентификаторы буквы, которые принимает datetime, отличаются от идентификаторов, используемых datestr, datenum и функциями datevec.

Типы данных: char | string

Векторы даты, заданные как m-by-6 или m-by-3 матрица, содержащая m полные или частичные векторы даты, соответственно. Полный вектор даты имеет шесть элементов, задавая год, месяц, день, час, минуту, и во-вторых, в том порядке. Частичный вектор даты имеет три элемента, задавая год, месяц и день, в том порядке. Каждый элемент DateVector должен быть положительным или отрицательным целочисленным значением за исключением элемента секунд, который может быть дробным. Если элемент выходит за пределы обычной области значений, datetime настраивает и тот элемент вектора даты и предыдущий элемент. Например, если мелким элементом является 70, то datetime настраивает элемент часов 1 и устанавливает мелкий элемент на 10. Если мелкий элемент является-15, то datetime уменьшает элемент часов 1 и устанавливает мелкий элемент на 45.

Пример: [2014 10 24 12 45 07]

Пример: [2014 10 24]

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Год, месяц и дневные массивы, заданные как числовые массивы. Эти массивы должны быть одного размера, или любой может быть скаляром. Y,M,D должен быть целочисленными значениями.

  • Если Y,M,D является всеми скалярами или всеми вектор-столбцами, то можно задать входные параметры как вектор даты, [Y M D].

  • Если элемент Y, M или входных параметров D выходит за пределы обычной области значений, то datetime настраивает и тот элемент и тот же элемент предыдущего входа. Для получения дополнительной информации см. описание для входного параметра DateVectors.

Пример: 2003,10,24

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Год, месяц, день, час, минута и вторые массивы, заданные как числовые массивы. Эти массивы должны быть одного размера, или любой может быть скаляром. Задайте доли секунды как часть входа секунд, S. Массивы Y,M,D,H,MI должны содержать целочисленные значения.

  • Если Y,M,D,H,MI,S является всеми скалярами или всеми вектор-столбцами, то можно задать входные параметры как дату vector[Y M D H MI S].

  • Если элемент Y, M, D, H, MI или входных параметров S выходит за пределы обычной области значений, то datetime настраивает и тот элемент и тот же элемент предыдущего входа. Для получения дополнительной информации см. описание для входного параметра DateVectors.

Пример: 2003,10,24,12,45,07.451

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Год, месяц, день, час, минута, во-вторых, и массивы миллисекунды, заданные как числовые массивы. Эти массивы должны быть одного размера, или любой может быть скаляром. Массивы Y,M,D,H,MI,S должны содержать целочисленные значения. MS может содержать дробные миллисекунды.

Если элемент Y, M, D, H, MI, S или входных параметров MS выходит за пределы обычной области значений, то datetime настраивает и тот элемент и тот же элемент предыдущего входа. Для получения дополнительной информации см. описание для входного параметра DateVectors.

Пример: 2003,10,24,12,45,07,10.52

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Числовые значения, заданные как массив.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Тип значений в X, заданном как одно из этих значений.

Значение dateType

Тип значений в X

'datenum'

Номер дней с 0 января 0000 (преждевременный календарь ISO).

'excel'

Номер дней с 0 января 1900.

Числа даты Excel® округлены к ближайшей микросекунде.

Примечание: Excel неправильно принимает, что год 1900 является високосным годом. Поэтому, когда вычислительные числа даты Excel там являются разрывом одного дополнительного дня между 28 февраля 1900 и 1 марта 1900.

'excel1904'

Номер дней с 0 января 1904.

Числа даты Excel округлены к ближайшей микросекунде.

Примечание: Excel неправильно принимает, что год 1900 является високосным годом. Поэтому, когда вычислительные числа даты Excel там являются разрывом одного дополнительного дня между 28 февраля 1900 и 1 марта 1900.

'juliandate'

Номер дней с полудня UTC 24 ноября 4714 BCE (преждевременный Григорианский календарь).

Если вы преобразовываете X в массив datetime, не задавая часовой пояс, то значения datetime представляют времена UTC, не местное время. Чтобы представлять местное время, задайте часовой пояс с помощью аргумента пары "имя-значение" 'TimeZone'.

Пример: Преобразуйте X с помощью часового пояса для Нью-Йорка.

T = datetime(X,'ConvertFrom','juliandate',...
'TimeZone','America/New_York')

Затем можно преобразовать T в незонный массив datetime, представляющий местное время путем присвоения пустого символьного вектора TimeZone.

T.TimeZone = ''

'modifiedjuliandate'

Номер дней с полуночи UTC 17 ноября 1858.

Если вы преобразовываете X в массив datetime, не задавая часовой пояс, то значения datetime представляют времена UTC, не местное время. Чтобы представлять местное время, задайте часовой пояс с помощью аргумента пары "имя-значение" 'TimeZone'.

Пример: Преобразуйте X с помощью часового пояса для Нью-Йорка.

T = datetime(X,'ConvertFrom','modifiedjuliandate',...
'TimeZone','America/New_York')

Затем можно преобразовать T в незонный массив datetime, представляющий местное время путем присвоения пустого символьного вектора TimeZone.

T.TimeZone = ''

'posixtime'

Номер секунд с 1 января 1970 0:00:00 UTC, не считая секунды прыжка.

Если вы преобразовываете X в массив datetime, не задавая часовой пояс, то значения datetime представляют времена UTC, не местное время. Чтобы представлять местное время, задайте часовой пояс с помощью аргумента пары "имя-значение" 'TimeZone'.

Пример: Преобразуйте X с помощью часового пояса для Нью-Йорка.

T = datetime(X,'ConvertFrom','posixtime',...
'TimeZone','America/New_York')

Затем можно преобразовать T в незонный массив datetime, представляющий местное время путем присвоения пустого символьного вектора TimeZone.

T.TimeZone = ''

'yyyymmdd'

Даты как числовые значения YYYYMMDD. Например, 20140402 представляет 2 апреля 2014.

'ntp'

Количество "тактов системных часов" с 1 января 1900 0:00:00 UTC, где каждый такт системных часов 2^-32 секунды.

'.net'

Количество "тактов системных часов" с 1 января 0001 0:00:00 UTC, где каждый такт системных часов составляет 100 нс.

'ntfs'

Количество "тактов системных часов" с 1 января 1601 0:00:00 UTC, где каждый такт системных часов составляет 100 нс.

'epochtime','Epoch',epochValue

Номер секунд с эпохи.

Необходимо также задать epochValue, который является скалярным datetime, или вектором символов или скаляром строки представление времени эпохи.

Пример: Возвратите номер дней с 1 января 2000.

T = datetime(X,'ConvertFrom',...
'epochtime','Epoch','2000-01-01')

'epochtime','Epoch',epochValue,'TicksPerSecond',n

Количество "тактов системных часов" с эпохи.

В дополнение к определению epochValue также можно задать n, который является скалярным целым числом, которое задает количество "тактов системных часов" в секунду.

Пример: Возвратите номер дней с 1 января 2000, где X представляет время в миллисекундах с тех пор или перед той датой.

T = datetime(X,'ConvertFrom',...
'epochtime','Epoch','2000-01-01','TicksPerSecond',1000)

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'Format','eeee MMMM d, y','TimeZone','local' применяет формат отображения к значениям datetime и задает зону местного времени.

Формат отображения значений в выходном массиве, заданном как пара, разделенная запятой, состоящая из 'Format' и одно из следующих значений.

Значение FormatОписание

'default'

Используйте формат отображения по умолчанию.

'defaultdate'

Используйте формат отображения по умолчанию для стоимости datetime, созданной без компонентов времени.

'preserveinput'

Используйте формат, заданный форматом ввода, infmt. Если вы не задаете infmt, то datetime определяет формат автоматически.

вектор символов или скаляр строки

Используйте формат, который вы задаете с вектором символов или представляете скаляр в виде строки.

Если вы задаете свой собственный формат, то необходимо использовать допустимые идентификаторы буквы. Для полного списка допустимых идентификаторов буквы смотрите свойство Format.

Формат заводской настройки зависит от вашей системной локали. Чтобы изменить формат отображения по умолчанию, смотрите Формат datetime По умолчанию.

Если вы задаете вход DateStrings, но не задаете параметр 'InputFormat', то datetime пытается использовать значение Format, чтобы интерпретировать DateStrings.

Пример: 'Format','eeee, MMMM d, yyyy HH:mm:ss' отображает дату и время, такую как Wednesday, April 9, 2014 21:41:06.

Типы данных: char | string

Локаль значений входного параметра DateStrings, заданных как пара, разделенная запятой, состоящая из 'Locale' и вектора символов или скаляра строки. Значение Locale определяет, как datetime интерпретирует DateStrings. Однако это не определяет, как значения вывода datetime отображаются.

Значение Locale может быть:

  • 'system', чтобы задать вашу системную локаль.

  • Вектор символов или скаляр строки в форме, xx_YY, где xx является строчный ISO 639-1 двухбуквенный код, который задает язык и YY, является прописной альфой ISO 3166-1 2 кода, которые задают страну.

Эта таблица приводит некоторые общие ценности для локали.

Локаль ЯзыкСтрана
'de_DE'Немецкий языкГермания
'en_GB'Английский языкСоединенное Королевство
'en_US'Английский языкСоединенные Штаты
'es_ES'Испанский языкИспания
'fr_FR'Французский языкФранция
'it_IT'Итальянский языкИталия
'ja_JP'Японский языкЯпония
'ko_KR'Корейский языкКорея
'nl_NL'Нидерландский языкНидерланды
'zh_CN'Китайский язык (упрощен)Китай

Можно использовать пару "имя-значение" 'Locale' только, когда вы используете входной параметр DateStrings.

Пример: 'Locale','de_DE'

Примечание

Значение Locale определяет, как интерпретированы входные текстовые значения. Выходные значения datetime всегда отображаются на языке, заданном опцией Локали в разделе формата Datetime панели Настроек.

Типы данных: char | string

Запустите год 100-летнего диапазона дат, в котором 2D символьный год находится, заданный как пара, разделенная запятой, состоящая из 'PivotYear' и целого числа. Используйте год центра, чтобы интерпретировать даты, которые задают год как два символа. Таким образом, год центра имеет эффект только, когда аргумент infmt включает y или yy.

Можно использовать пару "имя-значение" 'PivotYear' только, когда вы используете входной параметр DateStrings.

Пример: 'PivotYear',1900

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Часовой пояс, заданный как пара, разделенная запятой, состоящая из 'TimeZone' и вектора символов или скаляра строки, который задает свойство TimeZone.

Типы данных: char | string

Свойства

развернуть все

Формат отображения, заданный как 'default', 'defaultdate', вектор символов или скаляр строки.

Значение FormatОписание

'default'

Используйте формат отображения по умолчанию.

'defaultdate'

Используйте формат отображения по умолчанию для стоимости datetime, созданной без компонентов времени.

вектор символов или скаляр строки

Используйте формат, который вы задаете с вектором символов или представляете скаляр в виде строки.

Если вы задаете собственный формат, то он должен использовать допустимые идентификаторы буквы, которые соответствуют Unicode® Locale Data Markup Language (LDML) стандарт в течение многих дат и времен.

Пример: 'eeee, MMMM d, yyyy HH:mm:ss' отображает дату и время, такую как Wednesday, April 9, 2014 21:41:06.

Чтобы разделить поля, можно включать символы небуквы, такие как дефис, пробел, двоеточие или любые символы non-ASCII. Чтобы включать буквы A-Z и a-z как буквенные символы в формате, заключите их в одинарные кавычки.

Пример: 'uuuu-MM-dd''T''HH:mm:ss' отображает дату и время, такую как 2014-04-09T21:41:06.

Примечание

Идентификаторы буквы, которые принимает datetime, отличаются от идентификаторов, используемых datestr, datenum и функциями datevec.

Формат заводской настройки зависит от вашей системной локали. Чтобы изменить формат отображения по умолчанию, смотрите Формат datetime По умолчанию.

Примеры распространенных форматов

Эта таблица приводит общие форматы отображения. Примеры показывают отформатированный вывод для даты, среда, 9 апреля 2014 в 9:41:06.12345 PM, в Нью-Йорке.

Значение FormatПример
'yyyy-MM-dd'2014-04-09
'dd/MM/yyyy'09/04/2014
'dd.MM.yyyy'09.04.2014
'yyyy年 MM月 dd日'2014年 04月 09日 (Символы для японской локали, ja_JP)
'MMMM d, yyyy'April 9, 2014
'eeee, MMMM d, yyyy h:mm a'Wednesday, April 9, 2014 9:41 PM
'MMMM d, yyyy HH:mm:ss Z'April 9, 2014 21:41:06 -0400
'yyyy-MM-dd''T''HH:mmXXX'2014-04-09T21:41-04:00
'yyyy-MM-dd HH:mm:ss.SSS'2014-04-09 21:41:06.123

Все форматы даты и времени

Используйте эти идентификаторы, чтобы задать форматы отображения полей даты и времени. Форматы отображения вывод show для даты, среда, 9 апреля 2014 в 9:41:06.12345 PM, в Нью-Йорке.

Обозначьте буквами идентификаторОписаниеОтображение
GЭраCE
yГод, без начальных нулей. Смотрите, Обратите внимание на то, что следует этой таблице.2014
yyГод, с помощью последних двух цифр. Смотрите, Обратите внимание на то, что следует этой таблице.14
yyy, yyyy...Год, с помощью, по крайней мере, количество цифр задан количеством экземпляров 'y'В течение года 2014, 'yyy' отображает 2014, в то время как 'yyyyy' отображает 02014.
u, uu...Год ISO. Один номер, определяющий год. Значение года ISO присваивает положительные значения годам CE и отрицательные величины к годам BCE с 1 BCE быть годом 0.2014
QЧетверть, с помощью одной цифры2
QQЧетверть, с помощью двух цифр02
QQQЧетверть, сокращеннаяQ2
QQQQЧетверть, полное имя2nd quarter
MМесяц, числовое использование одной или двух цифр4
MMМесяц, числовое использование двух цифр04
MMMМесяц, сокращенное имяApr
MMMMМесяц, полное имяApril
MMMMMМесяц, использованный для своей выгоды сначала, обозначает буквамиA
WНеделя месяца, с помощью одной цифры2
dДень месяца, с помощью одной или двух цифр9
ddДень месяца с помощью двух цифр09
DДень года, с помощью один, два, или три цифры99
DDДень года с помощью двух цифр99
DDDДень года с помощью трех цифр099
eДень недели (числовой, с помощью одной или двух цифр)4, где воскресенье является первым днем недели.
eeДень недели (числовой, с помощью двух цифр)04
eeeДень, сокращенное имяWed
eeeeДень, полное имяWednesday
eeeeeДень, использованный для своей выгоды сначала, обозначает буквамиW
aДневной период (AM или PM)PM
hЧас, 12-часовое обозначение часов с помощью одной или двух цифр9
hhЧас, 12-часовое обозначение часов с помощью двух цифр09
HЧас, 24-часовое обозначение часов с помощью одной или двух цифр21
HHЧас, 24-часовое обозначение часов с помощью двух цифр21
mМинута, с помощью одной или двух цифр41
mmМинута, с помощью двух цифр41
sВо-вторых, с помощью одной или двух цифр6
ssВо-вторых, использование двух цифр06
S, SS..., SSSSSSSSSДоля секунды, с помощью количества цифр, заданных количеством экземпляров 'S' (до 9 цифр).'SSS' обрезает 6,12345 секунд до 6.123.

Примечание

  • Если вы читаете номер года 2D цифры и задаете формат как y или yy, то год центра определяет век, которому принадлежит год.

  • Если вы читаете номер дня года и задаете формат, который содержит идентификаторы и в течение дня года (D) и в течение Грегорианский год (y), то datetime не может считать номер дня года правильно. Используйте год ISO (u) вместо y.

  • Используйте один или несколько символов u вместо символов y, чтобы представлять год при работе с числами года около нуля.

  • Значения datetime позже, чем CE 144 683 лет или перед 140743 BCE отображают только числа года, независимо от заданного значения Format.

Форматы смещения часового пояса

Используйте эти идентификаторы, чтобы задать формат отображения смещения часового пояса. Смещение часового пояса является количеством времени, что определенный datetime смещается от UTC. Часовой пояс имеет правила для определения смещения часового пояса, и смещение может отличаться в разное время года. Включайте идентификатор смещения часового пояса в формат отображения для массива datetime когда это необходимо, чтобы гарантировать, что компоненты времени отображены однозначно.

Обозначьте буквами идентификаторОписаниеОтображение
zСокращенное имя часового пояса смещается. Если это значение не доступно, то смещение часового пояса использует короткий формат UTC, такой как UTC-4.EDT
ZISO 8601 основной формат с часами, минутами и дополнительными полями секунд.-0400
ZZZZДлинный формат UTC.UTC-04:00
ZZZZZРасширенный формат ISO 8601 с часами, минутами и дополнительными полями секунд. Смещение времени нуля отображено как индикатор "Z" ISO 8601 UTC.-04:00
x или XISO 8601 основной формат с полем часов и дополнительным мелким полем. Если вы задаете X, то смещение времени нуля отображено как индикатор "Z" ISO 8601 UTC.-04
xx или XXISO 8601 основной формат с часами и мелкими полями. Если вы задаете XX, то смещение времени нуля отображено как индикатор "Z" ISO 8601 UTC.-0400
xxx или XXXРасширенный формат ISO 8601 с часами и мелкими полями. Если вы задаете XXX, то смещение времени нуля отображено как индикатор "Z" ISO 8601 UTC.-04:00
xxxx или XXXXISO 8601 основной формат с часами, минутами и дополнительными полями секунд. Если вы задаете XXXX, то смещение времени нуля отображено как индикатор "Z" ISO 8601 UTC.-0400
xxxxx или XXXXXРасширенный формат ISO 8601 с часами, минутами и дополнительными полями секунд. Если вы задаете XXXXX, то смещение времени нуля отображено как индикатор "Z" ISO 8601 UTC.-04:00

Часовой пояс, заданный как вектор символов или скаляр строки. Значение TimeZone задает часовой пояс, что datetime функционирует использование, чтобы интерпретировать входные данные. TimeZone также задает часовой пояс выходного массива. Если входные данные являются векторами символов или строками, которые включают часовой пояс, то функция datetime преобразовывает все значения в зону требуемого времени.

Значение TimeZone может быть:

  • '', чтобы создать “незонный” массив datetime, который не принадлежит определенному часовому поясу.

  • Имя области часового пояса от Базы данных Часового пояса IANA; например, 'America/Los_Angeles'. Имя области часового пояса составляет текущие и исторические правила для стандарта и смещений дневного света от UTC, которые наблюдаются в географической области.

  • Вектор символов ISO 8601 формы +HH:mm или -HH:mm; например, '+01:00', чтобы задать часовой пояс, который является фиксированным смещением от UTC.

  • 'UTC', чтобы создать массив datetime в универсальное время.

  • 'UTCLeapSeconds', чтобы создать массив datetime в универсальное время, которое считает в течение секунд прыжка.

  • 'local', чтобы создать массив datetime в зоне системного времени. Когда вы запрашиваете свойство TimeZone, значение IANA возвращено.

Эта таблица приводит некоторые общие названия областей часового пояса от Базы данных Часового пояса IANA.

Значение TimeZoneСмещение UTCСмещение DST UTC
'Africa/Johannesburg'+02:00+02:00
'America/Chicago'−06:00−05:00
'America/Denver'−07:00−06:00
'America/Los_Angeles'−08:00−07:00
'America/New_York'−05:00−04:00
'America/Sao_Paulo'−03:00−02:00
'Asia/Hong_Kong'+08:00+08:00
'Asia/Kolkata'+05:30+05:30
'Asia/Tokyo'+09:00+09:00
'Australia/Sydney'+10:00+11:00
'Europe/London'+00:00+01:00
'Europe/Zurich'+01:00+02:00

Также можно использовать функцию timezones, чтобы отобразить список имен часового пояса IANA, которые принимает функция datetime.

Типы данных: char

Количество года каждого значения в массиве datetime, заданном как числовой массив, который одного размера и форма как массив datetime. Каждый год номер является целочисленным значением на основе календаря ISO. Годы в текущую эру положительны, и годы в предыдущую эру являются нулем или отрицательный. Например, количество года 1 BCE 0.

Если вы устанавливаете свойство Year на год непрыжка для значения datetime, которое происходит в день прыжка (29 февраля), то свойства Day и Month изменяются до 1 марта.

Количество месяца каждого значения в массиве datetime, заданном как числовой массив, который одного размера и форма как массив datetime. Каждый месяц номер является целочисленным значением от 1 до 12. Если вы устанавливаете значение вне той области значений, то свойство Year настраивает соответственно, и свойство Month остается в области значений 1 - 12. Например, месяц 0 соответствует месяцу 12 из предыдущего года. Для исторических дат номер месяца основан на преждевременном Григорианском календаре.

Количество дня месяца каждого значения в массиве datetime, заданном как числовой массив, который одного размера и форма как массив datetime. Каждый день месяца номер является целочисленным значением от 1 до 28, 29, 30, или 31, в зависимости от месяца и года. Если вы устанавливаете значение вне той области значений, то свойства Month и Year настраивают соответственно, и свойство Day остается в соответствующей области значений. Например, день 0 соответствует в последний день предыдущего месяца. Для исторических дат дневной номер основан на преждевременном Григорианском календаре.

Количество часа каждого значения в массиве datetime, заданном как числовой массив, который одного размера и форма как массив datetime. Каждый час номер является целочисленным значением от 0 до 23. Если вы устанавливаете значение вне той области значений, то Day, Month и свойства Year настраивают соответственно, и свойство Hour остается в соответствующей области значений. Например, час-1 соответствует часу 23 из предыдущего дня.

Эти условия применяются к массивам datetime с определенным часовым поясом, который следует за летним временем:

  • Когда вы задаете значение для свойства Hour, которое создало бы несуществующий datetime в разрыве часа, когда летнее время начинается, значение свойства Hour настраивает к следующему часу.

  • Когда вы задаете значение для свойства Hour, которое создало бы неоднозначный datetime в перекрытии часа, когда летнее время заканчивается, datetime настраивает к второму из этих двух раз (в стандартное время) с тем часом.

Мелкое количество каждого значения в массиве datetime, заданном как числовой массив, который одного размера и форма как массив datetime. Каждую минуту номер является целочисленным значением от 0 до 59. Если вы задаете значение вне той области значений, то Hour, Day, Month и свойства Year настраивают соответственно, и свойство Minute остается в соответствующей области значений. Например, минута-1 соответствует минуте 59 из предыдущего часа.

Второе количество каждого значения в массиве datetime, заданном как числовой массив, который одного размера и форма как массив datetime. Каждое второе значение обычно является значением с плавающей точкой в пределах от 0 к меньше чем 60. Если вы устанавливаете значение вне той области значений, то Minute, Hour, Day, Month и свойства Year настраивают соответственно, и свойство Second остается в соответствующей области значений. Например, вторые-1 соответствует вторым 59 из предыдущей минуты.

Массив datetime со значением TimeZone 'UTCLeapSeconds' имеет секунды в пределах от 0 к меньше чем 61. Значения от 60 до 61 представляют datetimes, которые происходят во время второго прыжка.

Это свойство доступно только для чтения.

Установка зоны системного времени, заданная как вектор символов или скаляр строки. Система, куда MATLAB® запускается, определяет эту установку часового пояса.

Пример: America/New_York

Примеры

свернуть все

Задайте текущую дату и время в локальной зоне системного времени.

t = datetime('now','TimeZone','local','Format','d-MMM-y HH:mm:ss Z')
t = datetime
   21-Feb-2019 20:24:54 -0500

Задайте текущую дату и время в часовом поясе, представленном Сеулом, Корея

t = datetime('now','TimeZone','Asia/Seoul','Format','d-MMM-y HH:mm:ss Z')
t = datetime
   22-Feb-2019 10:24:54 +0900

Создайте массив datetime из массива ячеек из символьных векторов.

DateStrings = {'2014-05-26';'2014-08-03'};
t = datetime(DateStrings,'InputFormat','yyyy-MM-dd')
t = 2x1 datetime array
   26-May-2014
   03-Aug-2014

Значения datetime в отображении t с помощью формата по умолчанию, а не формата входных дат.

Начиная в R2016b, можно создать строковые массивы с функцией string и преобразовать их в значения datetime.

str = string({'2016-03-24','2016-04-19'})
str = 1x2 string array
    "2016-03-24"    "2016-04-19"

Преобразуйте строки, задав формат ввода как yyyy-MM-dd. Формат должен быть задан как вектор символов, даже при том, что str является массивом строк.

t = datetime(str,'InputFormat','yyyy-MM-dd')
t = 1x2 datetime array
   24-Mar-2016   19-Apr-2016

Создайте стоимость datetime из текста, который представляет дату и время точности миллисекунды. Чтобы преобразовать текст в формате, который функция datetime не может проанализировать без большей информации, задайте аргумент пары "имя-значение" 'InputFormat'.

d = '2018-06-25 11:23:37.712';
t = datetime(d,'InputFormat','yyyy-MM-dd HH:mm:ss.SSS')
t = datetime
   25-Jun-2018 11:23:37

Преобразование действительно сохраняет доли секунды. Однако datetime по умолчанию массивы не отображают доли секунды. Чтобы отобразить их, задайте или пару "имя-значение" 'Format' или свойство Format.

t.Format = 'MMM dd, yyyy HH:mm:ss.SSS'
t = datetime
   Jun 25, 2018 11:23:37.712

Аргумент 'InputFormat' применяется только к преобразованиям из входного текста. Свойство Format задает отображение для любого массива datetime.

Преобразуйте даты в формате ISO 8601 к значениям datetime.

Создайте массив ячеек из символьных векторов, содержащий даты в формате ISO 8601. В этом формате буква T используется в качестве разделителя, который разделяет дату и время. Каждый вектор символов включает смещение часового пояса. Буква Z не указывает ни на какое смещение от UTC.

DateStrings = {'2014-05-26T13:30-05:00';'2014-08-26T13:30-04:00';'2014-09-26T13:30Z'}
DateStrings = 3x1 cell array
    {'2014-05-26T13:30-05:00'}
    {'2014-08-26T13:30-04:00'}
    {'2014-09-26T13:30Z'     }

Преобразуйте векторы символов в значения datetime. При определении формата ввода заключите букву T в одинарные кавычки, чтобы указать, что это - буквенный символ. Задайте часовой пояс выходного массива datetime с помощью аргумента пары "имя-значение" TimeZone.

t = datetime(DateStrings,'InputFormat','uuuu-MM-dd''T''HH:mmXXX','TimeZone','UTC')
t = 3x1 datetime array
   26-May-2014 18:30:00
   26-Aug-2014 17:30:00
   26-Sep-2014 13:30:00

Значения datetime в t отображаются в формате по умолчанию.

Создайте массив ячеек из символьных векторов, содержащий даты на французском языке.

C = {'8 avril 2013','9 mai 2013';'10 juin 2014','11 juillet 2014'}
C = 2x2 cell array
    {'8 avril 2013'}    {'9 mai 2013'     }
    {'10 juin 2014'}    {'11 juillet 2014'}

Преобразуйте векторы символов в C к значениям datetime. Если ваш компьютер установлен в локаль, которая использует английский язык, необходимо задать аргумент пары "имя-значение" 'Locale', чтобы указать, что строки находятся на французском языке.

t = datetime(C,'InputFormat','d MMMM yyyy','Locale','fr_FR')
t = 2x2 datetime array
   08-Apr-2013   09-May-2013
   10-Jun-2014   11-Jul-2014

Значения datetime в t отображаются в формате по умолчанию, и на языке использование MATLAB в зависимости от вашей системной локали.

Создайте массив datetime из отдельных массивов года, месяца и дневных значений.

Создайте демонстрационные числовые массивы значений года Y и дневных значений D. В этом случае значение месяца M является скаляром.

Y = [2014;2013;2012];
M = 01;
D = [31;30;31];

Создайте массив datetime.

t = datetime(Y,M,D)
t = 3x1 datetime array
   31-Jan-2014
   30-Jan-2013
   31-Jan-2012

Задайте пользовательский формат отображения для вывода, с помощью аргумента пары "имя-значение" Format.

t = datetime(Y,M,D,'Format','eeee, MMMM d, y')
t = 3x1 datetime array
   Friday, January 31, 2014   
   Wednesday, January 30, 2013
   Tuesday, January 31, 2012  

Создайте демонстрационный массив чисел даты Excel®, которые представляют много дней с января 0, 1900.

X = [39558, 39600; 39700, 39800]
X = 2×2

       39558       39600
       39700       39800

Преобразуйте значения в X к значениям datetime.

t = datetime(X,'ConvertFrom','excel')
t = 2x2 datetime array
   20-Apr-2008 00:00:00   01-Jun-2008 00:00:00
   09-Sep-2008 00:00:00   18-Dec-2008 00:00:00

Советы

Расширенные возможности

Введенный в R2014b