Массивы, которые представляют точки во времени
The datetime
тип данных представляет точки времени, такие как 24 августа 2020, 10:50:30 A datetime
массив задает год, месяц, день, час, минуту и вторые компоненты, сопоставленные с каждой точкой времени, хранящимся в массиве (используя пролептический ISO-календарь).
Кроме того, datetime
массивы обеспечивают:
Гибкие форматы для выхода отображения и входа анализа текста.
Хранение на дробные секунды до наносекундной точности.
Свойства для расчета часовых поясов, дневного сохранения времени и високосных секунд.
возвращает скалярное t
= datetimedatetime
массив, соответствующий текущей дате и времени.
использует дату, заданную как t
= datetime(relativeDay
)relativeDay
. The relativeDay
можно 'today'
, 'tomorrow'
, 'yesterday'
, или 'now'
.
создает массив значений datetime из текста в t
= datetime(DateStrings
)DateStrings
представление точек во времени.
интерпретирует t
= datetime(DateStrings
,'InputFormat',infmt
)DateStrings
использование формата, заданного infmt
. Все значения в входной параметр DateStrings
должен иметь тот же формат.
Чтобы избежать неоднозначностей между аналогичными форматами, задайте 'InputFormat'
и его соответствующее значение, infmt
.
Управление форматом отображения t
, задайте 'Format'
Аргумент пары "имя-значение", или установите Format
свойство t
.
создает вектор-столбец значений datetime из векторов дат в t
= datetime(DateVectors
)DateVectors
.
создает массив значений datetime для соответствующих элементов t
= datetime(Y,M,D
)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
. The dateType
аргумент задает тип значений в X
.
Если X
содержит POSIX® times или Julian dates, которые представляют локальное время, затем укажите соответствующий часовой пояс для t
использование 'TimeZone'
аргумент пары "имя-значение". Если вы не задаете часовой пояс, то время POSIX или даты Юлиана в X
рассматриваются как время UTC, а не как локальное время.
задает дополнительные опции, используя один или несколько аргументы пары "имя-значение", в дополнение к любому из входных параметров в предыдущих синтаксисах. Для примера можно задать формат отображения t
= datetime(___,Name,Value
)t
использование 'Format'
аргумент пары "имя-значение".
Для наилучшей эффективности при создании значений datetime из текста задайте 'Format'
или 'InputFormat'
и его соответствующее значение, infmt
.
relativeDay
- День относительно текущей даты'yesterday'
| 'today'
| 'tomorrow'
| 'now'
День относительно текущей даты, заданный как одно из следующих значений.
Значение relativeDay | Описание |
---|---|
'yesterday' | Дата предыдущего дня, в полночь |
'today' | Текущая дата, в полночь |
'tomorrow' | Дата следующего дня, в полночь |
'now' | Текущие дата и время |
DateStrings
- Текст, представляющий даты и временаТекст, представляющий даты и времена, заданный как символьный массив, массив ячеек из векторов символов или строковые массивы. 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
- Формат входного текстаФормат текста входа, представляющего даты и времена, заданный как вектор символов или строковый скаляр, содержащий идентификаторы букв:
Если 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
accepts отличаются от идентификаторов, используемых в datestr
, datenum
, и datevec
функций.
Типы данных: char
| string
DateVectors
- Векторы датВекторы дат, заданные как m
-by-6 или m
-by-3 матрица, содержащая m
полный или частичный векторы дат, соответственно. Полный вектор даты имеет шесть элементов, задающих год, месяц, день, час, минуту и секунду в этом порядке. Вектор частичной даты имеет три элемента, задающих год, месяц и день в этом порядке. Каждый элемент DateVector
должно быть положительным или отрицательным целым значением, за исключением элемента seconds, который может быть дробным. Если элемент выходит за пределы обычной области значений, datetime
настраивает и этот элемент вектора дат, и предыдущий элемент. Для примера, если элемент minutes 70
, затем datetime
настраивает элемент часов по 1
и устанавливает элемент minutes на 10
. Если элемент minutes является - 15
, затем datetime
уменьшает элемент часов на 1
и устанавливает элемент minutes на 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]
.
Если элемент Y
, M
, или D
входы падают вне обычной области значений, тогда datetime
настраивает и этот элемент, и тот же элемент предыдущего входа. Для получения дополнительной информации см. описание DateVectors
входной параметр.
Пример: 2003,10,24
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
Y,M,D,H,MI,S
- Год, месяц, день, час, минута и вторые массивыГод, месяц, день, час, минута и второй массив заданы как числовые массивы. Эти массивы должны быть того же размера, или любой из них может быть скаляром. Задайте дробные секунды как часть входов секунд, S
. The Y,M,D,H,MI
массивы должны содержать целочисленные значения.
Если Y,M,D,H,MI,S
все скаляры или все векторы-столбцы, тогда можно задать входные параметры в качестве вектора дат [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
- Год, месяц, день, час, минута, секунда и миллисекундные массивыГод, месяц, день, час, минута, секунда и миллисекундные массивы, заданные как числовые массивы. Эти массивы должны быть того же размера, или любой из них может быть скаляром. The 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
X
- Числовые значенияЧисловые значения, заданные как массив.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
dateType
- Тип значений в X
'datenum'
| 'excel'
| 'excel1904'
| 'juliandate'
| ...Тип значений в X
, заданный как одно из следующих значений.
Значение | Тип значений в |
---|---|
|
Количество дней с момента 0-Jan-0000 (пролептический календарь ISO). |
| Количество дней с момента 0-Jan-1900. Excel® номера дат округлены до ближайшей микросекунды. Примечание: Excel неправильно принимает, что 1900 год является високосным. Поэтому при вычислении номеров дат Excel происходит разрыв одного дополнительного дня между 28 февраля 1900 года и 1 марта 1900 года. |
| Количество дней с момента 0-Jan-1904. Номера дат Excel округлены до ближайшей микросекунды. Примечание: Excel неправильно принимает, что 1900 год является високосным. Поэтому при вычислении номеров дат Excel происходит разрыв одного дополнительного дня между 28 февраля 1900 года и 1 марта 1900 года. |
|
Количество дней с полудня UTC 24-Nov-4714 BCE (пролептический григорианский календарь). Если вы преобразовываете Пример: Преобразуйте T = datetime(X,'ConvertFrom','juliandate',... 'TimeZone','America/New_York') Затем можно преобразовать T.TimeZone = '' |
|
Количество дней с полуночи по 17-Nov-1858 UTC. Если вы преобразовываете Пример: Преобразуйте T = datetime(X,'ConvertFrom','modifiedjuliandate',... 'TimeZone','America/New_York') Затем можно преобразовать T.TimeZone = '' |
|
Количество секунд с 1-Jan-1970 00:00:00 UTC, не считая високосных секунд. Если вы преобразовываете Пример: Преобразуйте T = datetime(X,'ConvertFrom','posixtime',... 'TimeZone','America/New_York') Затем можно преобразовать T.TimeZone = '' |
|
Даты как числовые значения YYYMMDD. Для примера, |
| Количество «тактов» с 1-Jan-1900 00:00:00 UTC, где каждый такт составляет 2 ^ -32 секунды. |
| Количество «тактовых тактов» с 1-Jan-0001 00:00:00 UTC, где каждый тактовый переключатель составляет 100 нс. |
| Количество «тактовых тактов» с 1-Jan-1601 00:00:00 UTC, где каждый тактовый переключатель составляет 100 нс. |
| Количество секунд с эпохи. Вы также должны задать Пример: Верните количество дней с 1 января 2000 года. T = datetime(X,'ConvertFrom',... 'epochtime','Epoch','2000-01-01') |
| Количество «тактовых тактов» с эпохи. В дополнение к указанию Пример: Верните количество дней с 1 января 2000 года, где 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'
- Формат отображения'default'
| 'preserveinput'
| вектор символов | строковый скалярФормат отображения значений в массиве выхода, заданный как разделенная запятой пара, состоящий из 'Format'
и одно из следующих значений.
Значение Format | Описание |
---|---|
|
Используйте формат отображения по умолчанию. |
|
Используйте формат, заданный форматом входа, |
вектор символов или строковый скаляр | Используйте формат, заданный с вектор символов или строкового скаляра. |
Если вы задаете свой собственный формат, то необходимо использовать действительные идентификаторы букв. Полный список допустимых идентификаторов букв см. в Format
свойство.
Формат по умолчанию зависит от локали системы. Для изменения формата отображения по умолчанию см. раздел Формат datetime по умолчанию.
Если вы задаете DateStrings
введите, но не задайте 'InputFormat'
параметр, затем datetime
пытается использовать Format
значение для интерпретации DateStrings
.
Пример: 'Format','eeee, MMMM d, yyyy HH:mm:ss'
отображает дату и время, такие как Wednesday, April 9, 2014 21:41:06
.
Типы данных: char
| string
'Locale'
- Локаль DateStrings
Локаль DateStrings
входные параметры, заданные как разделенная разделенными запятой парами, состоящая из 'Locale'
и вектор символов или строковый скаляр. The Locale
значение определяет, как datetime
интерпретирует DateStrings
. Однако это не определяет, как выход datetime
отображение значений.
The 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'
Примечание
The Locale
значение определяет, как интерпретируются входные текстовые значения. Выходные значения datetime всегда отображаются на языке, заданном опцией Locale в разделе Datetime format окна Preferences.
Для изменения локали datetime по умолчанию для отображения смотрите Задать настройки Командного окна.
Чтобы преобразовать значения datetime в текст с использованием другой локали, используйте char
, cellstr
, или string
функций.
Типы данных: char
| string
'PivotYear'
- Начальный год 100-летней области значений датyear(datetime('now'))-50
(по умолчанию) | целое числоНачальный год 100-летней области значений дат, в котором находится двухсимвольный год, заданный как разделенная разделенными запятой парами, состоящая из 'PivotYear'
и целое число. Используйте опорный год для интерпретации дат, определяющих год как два символа. То есть опорный год имеет эффект только тогда, когда infmt
аргумент включает y
или yy
.
Можно использовать 'PivotYear'
Пара "имя-значение" только, когда вы используете DateStrings
входной параметр.
Пример: 'PivotYear',1900
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
'TimeZone'
- Часовой пояс''
(по умолчанию) | символьный вектор | строковый скалярЧасовой пояс, заданный как разделенная разделенными запятой парами, состоящая из 'TimeZone'
и вектор символов или строковый скаляр, который задает часовой пояс.
The datetime
функция использует значение 'TimeZone'
интерпретировать входные данные и установить TimeZone
свойство выходного массива. Если входные данные являются векторами символов или строками, которые включают часовой пояс, то datetime
функция преобразует все значения в заданный часовой пояс.
Для получения дополнительной информации и списка часовых поясов смотрите TimeZone
свойство.
Типы данных: char
| string
Format
- Формат отображения'default'
| вектор символов | строковый скалярФормат отображения, заданный как 'default'
, вектор символов или строковый скаляр.
Значение Format | Описание |
---|---|
|
Используйте формат отображения по умолчанию. |
вектор символов или строковый скаляр | Используйте формат, заданный с вектор символов или строкового скаляра. |
Если вы задаете свой собственный формат, то он должен использовать действительные идентификаторы букв, которые соответствуют Юникоду® Язык разметки данных локали (LDML) стандарт для дат и времени.
Пример: 'eeee, MMMM d, yyyy HH:mm:ss'
отображает дату и время, такие как Wednesday, April 9, 2014 21:41:06
.
Для разделения полей можно включать небукву символы, такие как дефис, пространство, двоеточие или любые символы, отличные от ASCII. Чтобы включить буквы A-Z
и a-z
как буквальные символы в формате, заключайте их в одинарные кавычки.
Пример: 'uuuu-MM-dd''T''HH:mm:ss'
отображает дату и время, например 2014-04-09T21:41:06
.
Примечание
Идентификаторы букв, которые datetime
accepts отличаются от идентификаторов, используемых в 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 |
Используйте эти идентификаторы для определения форматов отображения полей даты и времени. Форматы отображения показа выхода для даты, Среда, 9 апреля 2014 в 9:41: 06.12345, в Нью-Йорке.
Идентификатор буквы | Описание | Отображение |
---|---|---|
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 . |
Примечание
Если вы читаете двухзначный номер года и задаете формат следующим y
или yy
, затем опорный год определяет век, которому принадлежит год.
Если вы читаете номер дня года и задаете формат, содержащий идентификаторы для обоих дней года (D
) и Григорианского года (y
), затем datetime
возможно, номер дня года считан неправильно. Использование года ISO (u
) вместо y
.
Используйте одну или несколько u
символы вместо y
символы для представления года при работе с номерами лет около нуля.
Значения datetime позднее 144683 лет CE или до 140743 BCE отображают только номера лет, независимо от заданного Format
значение.
Используйте эти идентификаторы, чтобы задать формат отображения смещения часового пояса. Смещение часового пояса - это количество времени, в течение которого определенное datetime смещается от UTC. Часовой пояс имеет правила для определения смещения часового пояса, и смещение может отличаться в разное время года. Включите идентификатор смещения часового пояса в формат отображения для массива datetime, когда необходимо убедиться, что компоненты времени отображаются однозначно.
Идентификатор буквы | Описание | Отображение |
---|---|---|
z | Сокращенное имя смещения часового пояса. Если это значение недоступно, смещение часового пояса использует короткий формат UTC, такой как UTC-4 . | EDT |
Z | Базовый формат ISO 8601 с полями часов, минут и необязательных секунд. | -0400 |
ZZZZ | Длинный формат UTC. | UTC-04:00 |
ZZZZZ | Расширенный формат ISO 8601 с полями часов, минут и дополнительных секунд. Смещение нуля по времени отображается как индикатор ISO 8601 UTC «Z». | -04:00 |
x или X | ISO 8601 базовый формат с полем часов и полем дополнительных минут. Если вы задаете X затем смещение нуля по времени отображается как индикатор ISO 8601 UTC «Z». | -04 |
xx или XX | ISO 8601 базовый формат с часами и минутами полей. Если вы задаете XX затем смещение нуля по времени отображается как индикатор ISO 8601 UTC «Z». | -0400 |
xxx или XXX | ISO 8601 расширенный формат с полями часов и минут. Если вы задаете XXX затем смещение нуля по времени отображается как индикатор ISO 8601 UTC «Z». | -04:00 |
xxxx или XXXX | Базовый формат ISO 8601 с полями часов, минут и необязательных секунд. Если вы задаете XXXX затем смещение нуля по времени отображается как индикатор ISO 8601 UTC «Z». | -0400 |
xxxxx или XXXXX | Расширенный формат ISO 8601 с полями часов, минут и дополнительных секунд. Если вы задаете XXXXX затем смещение нуля по времени отображается как индикатор ISO 8601 UTC «Z». | -04:00 |
TimeZone
- Часовой пояс''
(по умолчанию) | символьный вектор | строковый скалярЧасовой пояс, заданный как вектор символов или строковый скаляр. Вы можете использовать это свойство для изменения часового пояса после создания 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 | Смещение UTC DST |
---|---|---|
'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
Year
- Номер годаНомер года для каждого значения в datetime
массив, заданный как числовой массив, имеющий тот же размер и форму, что и datetime
массив. Число каждого года является целым значением на основе календаря ISO. Годы в нынешнюю эпоху положительны, а годы в предыдущую эпоху нулевые или отрицательные. Для примера число лет 1 BCE составляет 0.
Если вы задаете Year
свойство для нежирного года для datetime
значение, которое происходит в високосный день (29 февраля), затем Day
и Month
свойства изменяются на 1 марта.
Month
- Номер месяцаНомер месяца для каждого значения в datetime
массив, заданный как числовой массив, имеющий тот же размер и форму, что и datetime
массив. Число каждого месяца является целым значением от 1 до 12. Если вы задаете значение вне этой области значений, то Year
свойство корректируется соответственно, и Month
свойство находится в области значений от 1 до 12. Например, месяц 0 соответствует месяцу 12 предыдущего года. Для исторических дат номер месяца основан на пролептическом григорианском календаре.
Day
- Номер дня месяцаНомер дня месяца для каждого значения в datetime
массив, заданный как числовой массив, имеющий тот же размер и форму, что и datetime
массив. Каждое число дня месяца является целым числом значений от 1 до 28, 29, 30 или 31, в зависимости от месяца и года. Если вы задаете значение вне этой области значений, то Month
и Year
свойства регулируются соответственно, и Day
свойство остается в соответствующей области значений. Для примера день 0 соответствует последнему дню предыдущего месяца. Для исторических дат номер дня основан на пролептическом григорианском календаре.
Hour
- Часовой номерЧасовое число каждого значения в datetime
массив, заданный как числовой массив, имеющий тот же размер и форму, что и datetime
массив. Каждое часовое число является целым значением от 0 до 23. Если вы задаете значение вне этой области значений, то Day
, Month
, и Year
свойства регулируются соответственно, и Hour
свойство остается в соответствующей области значений. Для примера час -1 соответствует часу 23 предыдущего дня.
Эти условия применяются к массивам datetime с определенным часовым поясом, который следует за дневным сохранением времени:
Когда вы задаете значение для Hour
свойство, которое создало бы несуществующее значение datetime в часовой погрешности, когда начинается дневное сохранение время, значение Hour
свойство адаптируется к следующему часу.
Когда вы задаете значение для Hour
свойство, которое создало бы неоднозначное значение datetime в часовом перекрытии, когда заканчивается переход на летнее время, datetime настраивается на второе из двух раз (в стандартное время) с этим часом.
Minute
- Номер минутыНомер минуты каждого значения в datetime
массив, заданный как числовой массив, имеющий тот же размер и форму, что и datetime
массив. Каждое число минуты является целым значением от 0 до 59. Если вы задаете значение вне этой области значений, то Hour
, Day
, Month
, и Year
свойства регулируются соответственно, и Minute
свойство остается в соответствующей области значений. Для примера минута -1 соответствует минуте 59 предыдущего часа.
Second
- Второй номерВторой номер каждого значения в datetime
массив, заданный как числовой массив, имеющий тот же размер и форму, что и datetime
массив. Каждое второе значение является значением с плавающей точкой, обычно лежащим в диапазоне от 0 до менее 60. Если вы задаете значение вне этой области значений, то Minute
, Hour
, Day
, Month
, и Year
свойства регулируются соответственно, и Second
свойство остается в соответствующей области значений. Для примера второй -1 соответствует второй 59 предыдущей минуты.
A datetime
массив с TimeZone
значение 'UTCLeapSeconds'
имеет секунды от 0 до менее 61. Значения от 60 до 61 представляют datetimes, которые происходят во время скачка в секунду. (Список секунд скачка, поддерживаемых datetime
тип данных, см. leapseconds
.)
SystemTimeZone
- Установка системного часового поясаЭто свойство доступно только для чтения.
Настройка системного часового пояса в виде вектора символов или строкового скаляра. Система, в которой MATLAB® выполняется, определяет эту настройку часового пояса.
Пример: America/New_York
Укажите текущую дату и время в локальном системном часовом поясе.
t = datetime('now','TimeZone','local','Format','d-MMM-y HH:mm:ss Z')
t = datetime
23-Mar-2021 17:02:17 -0400
Укажите текущую дату и время в часовом поясе, представленном Сеулом, Корея
t = datetime('now','TimeZone','Asia/Seoul','Format','d-MMM-y HH:mm:ss Z')
t = datetime
24-Mar-2021 06:02:17 +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
The 'InputFormat'
аргумент применяется только к преобразованиям из входного текста. The 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
Список datetime
функций, см. Даты и время.
Список основных функций MATLAB, которые принимают datetime
массивы в качестве входных параметров, см. «Основные функции, поддерживающие массивы дат и времени».
'InputFormat'
форматы месяцев M
и MM
не распознавать имена и MMM
не распознает имена полных месяцевПоведение изменено в R2020a
Начиная с R2020a, когда вы задаете форматы месяцев в 'InputFormat'
Аргумент пары "имя-значение", M
и MM
форматы не распознают имена месяцев. Кроме того, MMM
формат распознает только сокращенные имена, а не полные имена месяцев. В предыдущих релизах все эти форматы признавали как сокращённые, так и полные имена месяцев.
Для получения дополнительной информации о форматах смотрите Format
свойство.
Указания и ограничения по применению:
Всегда задайте входной формат datetime при создании tall массив datetime для строковых массивов или векторов символов в массиве ячеек.
Если вы задаете 'Format'
как 'preserveinput'
, тогда MATLAB, возможно, потребуется вычислить длинный массив, чтобы определить формат.
Для получения дополнительной информации см. Раздел «Длинные массивы»
Указания и ограничения по применению:
Начиная с R2020a, можно использовать datetime
массивы в коде MATLAB, предназначенные для генерации кода. Для получения дополнительной информации смотрите Генерация кода для массивов Datetime (MATLAB Coder) и Ограничения массива Datetime для генерации кода (MATLAB Coder).
Указания и ограничения по применению:
Когда вы создаете datetime
массив из текста в DateStrings
, задайте вход сигнала infmt
.
Для получения дополнительной информации смотрите Запуск функций MATLAB с распределенными массивами (Parallel Computing Toolbox).
calendarDuration
| cellstr
| char
| duration
| leapseconds
| NaT
| string
| timezones
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.