Этот пример показывает два способа извлечь компоненты даты и времени от существующих массивов datetime: доступ к свойствам массива или вызывание функции. Затем пример показывает, как изменить компоненты даты и времени путем изменения свойств массива.
Создайте массив datetime
.
t = datetime('now') + calyears(0:2) + calmonths(0:2) + hours(20:20:60)
t = 1x3 datetime array
22-Feb-2019 16:11:10 23-Mar-2020 12:11:10 24-Apr-2021 08:11:10
Получите значения года каждого datetime в массиве. Используйте запись через точку, чтобы получить доступ к свойству Year
t
.
t_years = t.Year
t_years = 1×3
2019 2020 2021
Вывод, t_years
, является числовым массивом.
Получите значения месяца каждого datetime в t
путем доступа к свойству Month
.
t_months = t.Month
t_months = 1×3
2 3 4
Можно получить день, час, минуту и вторые компоненты каждого datetime в t
путем доступа к Hour
, Minute
и свойствам Second
, соответственно.
Используйте функцию month
, чтобы получить номер месяца для каждого datetime в t
. Используя функции альтернативный способ получить определенную дату или компоненты времени t
.
m = month(t)
m = 1×3
2 3 4
Используйте функцию month
, а не свойство Month
получить полные имена месяца каждого datetime в t
.
m = month(t,'name')
m = 1x3 cell array
{'February'} {'March'} {'April'}
Можно получить год, четверть, неделя, день, час, минута и вторые компоненты каждого datetime в t
с помощью year
, quarter
, week
, hour
, minute
и функций second
, соответственно.
Получите неделю чисел года для каждого datetime в t
.
w = week(t)
w = 1×3
8 13 17
Используйте функцию ymd
, чтобы получить год, месяц и дневные значения t
как три отдельных числовых массива.
[y,m,d] = ymd(t)
y = 1×3
2019 2020 2021
m = 1×3
2 3 4
d = 1×3
22 23 24
Используйте функцию hms
, чтобы получить час, минуту и вторые значения t
как три отдельных числовых массива.
[h,m,s] = hms(t)
h = 1×3
16 12 8
m = 1×3
11 11 11
s = 1×3
10.2665 10.2665 10.2665
Присвойте новые значения компонентам в существующем массиве datetime
путем изменения свойств массива. Используйте запись через точку, чтобы получить доступ к определенному свойству.
Измените количество года всех значений datetime в t
к 2 014. Используйте запись через точку, чтобы изменить свойство Year
.
t.Year = 2014
t = 1x3 datetime array
22-Feb-2014 16:11:10 23-Mar-2014 12:11:10 24-Apr-2014 08:11:10
Измените месяцы трех значений datetime в t
до января, февраля и марта, соответственно. Необходимо задать новое значение как числовой массив.
t.Month = [1,2,3]
t = 1x3 datetime array
22-Jan-2014 16:11:10 23-Feb-2014 12:11:10 24-Mar-2014 08:11:10
Установите часовой пояс t
путем присвоения значения свойству TimeZone
.
t.TimeZone = 'Europe/Berlin';
Измените формат отображения t
, чтобы отобразить только дату, а не информацию времени.
t.Format = 'dd-MMM-yyyy'
t = 1x3 datetime array
22-Jan-2014 23-Feb-2014 24-Mar-2014
Если вы присваиваете значения компоненту datetime, которые являются вне обычной области значений, MATLAB® нормирует компоненты. Обычная область значений в течение дня чисел месяца от 1 до 31. Присвойте дневные значения, которые превышают эту область значений.
t.Day = [-1 1 32]
t = 1x3 datetime array
30-Dec-2013 01-Feb-2014 01-Apr-2014
Числа месяца и года настраивают так, чтобы все значения остались в обычной области значений для каждого компонента даты. В этом случае,-1 января 2014 преобразовывает до 30 декабря 2013.