Извлечение или присвоение компонентов даты и времени массива datetime

Этот пример показывает два способа извлечь компоненты даты и времени из существующих массивов datetime: доступ к свойствам массива или вызывание функции. Затем пример показывает, как изменить компоненты даты и времени путем изменения свойств массива.

Access Properties, чтобы получить компонент даты и времени

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

t = datetime('now') + calyears(0:2) + calmonths(0:2) + hours(20:20:60)
t = 1x3 datetime
   30-Jan-2020 07:34:35   02-Mar-2021 03:34:35   31-Mar-2022 23:34:35

Получите значения года каждого datetime в массиве. Используйте запись через точку, чтобы получить доступ к Year свойство t.

t_years = t.Year
t_years = 1×3

        2020        2021        2022

Выход, t_years, числовой массив.

Получите значения месяца каждого datetime в t путем доступа к Month свойство.

t_months = t.Month
t_months = 1×3

     1     3     3

Можно получить день, час, минуту и вторые компоненты каждого datetime в t путем доступа к Hourминута, и Second свойства, соответственно.

Использование функций, чтобы получить компонент даты и времени

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

m = month(t)
m = 1×3

     1     3     3

Используйте month функционируйте, а не Month свойство получить полные имена месяца каждого datetime в t.

m = month(t,'name')
m = 1x3 cell
    {'January'}    {'March'}    {'March'}

Можно получить год, четверть, неделя, день, час, минута и вторые компоненты каждого datetime в t использование yearчетвертьнеделячасминута, и second функции, соответственно.

Получите неделю чисел года для каждого datetime в t.

w = week(t)
w = 1×3

     5    10    14

Получение нескольких компонентов даты и времени

Используйте ymd функция, чтобы получить год, месяц и дневные значения t как три отдельных числовых массива.

[y,m,d] = ymd(t)
y = 1×3

        2020        2021        2022

m = 1×3

     1     3     3

d = 1×3

    30     2    31

Используйте hms функция, чтобы получить час, минуту и вторые значения t как три отдельных числовых массива.

[h,m,s] = hms(t)
h = 1×3

     7     3    23

m = 1×3

    34    34    34

s = 1×3

   35.5171   35.5171   35.5171

Изменение компонентов даты и времени

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

Измените количество года всех значений datetime в t к 2 014. Используйте запись через точку, чтобы изменить Year свойство.

t.Year = 2014
t = 1x3 datetime
   30-Jan-2014 07:34:35   02-Mar-2014 03:34:35   31-Mar-2014 23:34:35

Измените месяцы трех значений datetime в t до января, февраля и марта, соответственно. Необходимо задать новое значение как числовой массив.

t.Month = [1,2,3]
t = 1x3 datetime
   30-Jan-2014 07:34:35   02-Feb-2014 03:34:35   31-Mar-2014 23:34:35

Установите часовой пояс t путем присвоения значения TimeZone свойство.

t.TimeZone = 'Europe/Berlin';

Измените формат отображения t отобразить только дату, а не информацию времени.

t.Format = 'dd-MMM-yyyy'
t = 1x3 datetime
   30-Jan-2014   02-Feb-2014   31-Mar-2014

Если вы присваиваете значения компоненту datetime, которые находятся вне обычной области значений, MATLAB® нормирует компоненты. Обычная область значений в течение дня чисел месяца от 1 до 31. Присвойте дневные значения, которые превышают эту область значений.

t.Day = [-1 1 32]
t = 1x3 datetime
   30-Dec-2013   01-Feb-2014   01-Apr-2014

Числа месяца и года настраивают так, чтобы все значения остались в обычной области значений для каждого компонента даты. В этом случае,-1 января 2014 преобразует до 30 декабря 2013.

Смотрите также

| | |