datetime

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

Описание

datetime тип данных представляет моменты времени, такой как 24 августа 2020, 10:50:30 datetime массив задает год, месяц, день, час, минуту и вторые компоненты, сопоставленные с каждым моментом времени, сохраненным в массиве (использующий преждевременный календарь ISO).

Кроме того, datetime массивы обеспечивают:

  • Гибкие форматы и для выходного отображения и для входного текстового парсинга.

  • Устройство хранения данных для долей секунды к точности наносекунды.

  • Свойства с учетом часовых поясов, летнее время и секунды прыжка.

Создание

Описание

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, задайте 'Format' аргумент пары "имя-значение" или набор Format свойство t.

пример

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

t = datetime(Y,M,D) создает массив значений datetime для соответствующих элементов YM, и 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- 6 или m- 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].

  • Если элемент YM, или 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].

  • Если элемент YMDH, 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 может содержать дробные миллисекунды.

Если элемент YMDH, MIS, или 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', 'Эпоха', epochValue

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

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

Пример: преобразуйте X использование полуночи 1 января 2000 как эпоха.

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

'epochtime', 'Эпоха', epochValue, 'TicksPerSecond', n

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

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

Пример: преобразуйте X использование полуночи 1 января 2000 как эпоха. Это преобразование интерпретирует значения в X как миллисекунды с полуночи 1 января 2000, потому что это задано, что существует 1 000 "тактов системных часов" в секунду.

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

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

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

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

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

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

'default'

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

'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 окна Preferences.

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

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

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

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

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

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

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

Для получения дополнительной информации и список часовых поясов, смотрите TimeZone свойство.

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

Свойства

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

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

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

'default'

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

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

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

Если вы задаете собственный формат, то он должен использовать допустимые идентификаторы буквы, которые соответствуют Unicode® Стандарт языка разметки данных локали (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

Часовой пояс в виде вектора символов или строкового скаляра. Можно использовать это свойство изменить часовой пояс после создания datetime массив.

Установить часовой пояс и вычислить смещения часового пояса, datetime тип данных использует код и данные, обеспеченные Комитетом по цифровым адресам в интернете (IANA) в Базе данных Часового пояса IANA. Версия в настоящее время используется datetime включает недавние обновления от IANA. (Чтобы использовать версию datetime, возвратите второй выходной параметр timezones функция.

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

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

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

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

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

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

  • '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

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

Количество года каждого значения в 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месяц, и Year свойства настраивают соответственно, и Hour свойство остается в соответствующей области значений. Например, час-1 соответствует часу 23 из предыдущего дня.

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

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

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

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

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

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

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

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

Пример: America/New_York

Примеры

свернуть все

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

t = datetime('now','TimeZone','local','Format','d-MMM-y HH:mm:ss Z')
t = datetime
   24-Aug-2021 23:49:28 -0400

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

t = datetime('now','TimeZone','Asia/Seoul','Format','d-MMM-y HH:mm:ss Z')
t = datetime
   25-Aug-2021 12:49:28 +0900

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

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

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

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

str = ["2016-03-24","2016-04-19"]
str = 1x2 string
    "2016-03-24"    "2016-04-19"

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

t = datetime(str,'InputFormat','yyyy-MM-dd')
t = 1x2 datetime
   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
    {'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
   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
    {'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
   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
   31-Jan-2014
   30-Jan-2013
   31-Jan-2012

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

t = datetime(Y,M,D,'Format','eeee, MMMM d, y')
t = 3x1 datetime
   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
   20-Apr-2008   01-Jun-2008
   09-Sep-2008   18-Dec-2008

Советы

Вопросы совместимости

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

Поведение изменяется в R2020a

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

Введенный в R2014b
Для просмотра документации необходимо авторизоваться на сайте