matlab对日期和时间数据的处理

matlab对日期时间数据的处理-----datestr篇

datestr: 将日期和时间转换为字符串格式html

语法格式数组

DateString = datestr(t)函数

DateString = datestr(t) 将输入数组 t 中的日期时间值转换为表示日期和时间的文本,也可使用 char、cellstr 或 string 函数将 datetime 值表示为文本。datestr 函数返回包含 m 行的字符数组,其中 m 是 t 中的日期时间值的总数。默认状况下,datestr 以 day-month-year hour:minute:second 格式返回文本。若是 hour:minute:second 是 00:00:00,则返回的文本的格式为 day-month-year。spa

t = [datetime('now');datetime('tomorrow')]

DateString = datestr(t)

datestr 返回表示日期和时间的文本,其格式为 day-month-year hour:minute:second。操作系统

DateString = datestr(DateVector)code

DateString = datestr(DateVector) 将日期向量转换为表示日期和时间的文本。datestr 函数返回包含 m 行的字符数组,其中 m 是 DateVector 中的日期向量的总数。orm

DateVector = [2019,8,18,21,43,11];
datestr(DateVector)

DateString = datestr(DateNumber)htm

DateString = datestr(DateNumber) 将日期序列值转换为表示日期和时间的文本。datestr 函数返回包含 m 行的字符数组,其中 m 是 DateNumber 中的日期值的总数。blog

DateNumber = 725935;
formatOut = 'mmmm-dd-yyyy';
str = datestr(DateNumber,formatOut,'local')

在不指定 'local' 的条件下执行同一调用。ci

str = datestr(DateNumber,formatOut)

DateString = datestr(___,formatOut)

DateString = datestr(___,formatOut) 使用 formatOut 指定输出文本的格式。您能够将 formatOut 与上述语法中的任何输入参数结合使用。

以 mm/dd/yy 格式设置当前日期的格式。

可使用符号标识符指定此格式。

formatOut = 'mm/dd/yy';
datestr(now,formatOut)

也可使用数值标识符指定此格式。

formatOut = 2;
datestr(now,formatOut)

能够从新设置日期和时间的格式,也能够显示毫秒。

dt = datestr(now,'mmmm dd, yyyy HH:MM:SS.FFF AM')

DateString = datestr(DateStringIn)

DateString = datestr(DateStringIn) 将 DateStringIn 转换为 day-month-year hour:minute:second 格式的文本。以 DateStringIn 表示的全部日期和时间必须具备相同的格式。

DateString = datestr(DateStringIn,formatOut,PivotYear)

DateString = datestr(DateStringIn,formatOut,PivotYear) 以 formatOut 指定的格式将 DateStringIn 转换为 DateString,并使用可选的 PivotYear 解释以双字符形式指定年份的文本。

更改基准年份以更改年份范围。

使用 1900 做为基准年份。

DateStringIn = '4/16/55';
formatOut = 1;
PivotYear = 1900;
datestr(DateStringIn,formatOut,PivotYear)

对于同一日期,使用基准年份 2000。

PivotYear = 2000;
datestr(DateStringIn,formatOut,PivotYear)

DateString = datestr(___,'local')

DateString = datestr(___,'local') 返回以当前区域设置的语言表示的日期。此语言是您经过计算机的操做系统选择的语言。若是参数列表中不包括 'local',则 datestr 以默认语言(美国英语)返回文本。'local' 可与上述的任何语法结合使用。'local' 参数必须排在参数序列的最后。

以当前区域设置的语言将日期值转换为文本。

在法语区域设置中使用 'local' 参数。

DateNumber = 725935;
formatOut = 'mmmm-dd-yyyy';
str = datestr(DateNumber,formatOut,'local')

在不指定 'local' 的条件下执行同一调用。

str = datestr(DateNumber,formatOut)

formatOut - 表示日期和时间的输出的格式

  • 表示日期和时间的输出的格式,指定为由符号标识符组成的字符向量或字符串标量,或者与预约义的格式对应的整数。若是不指定 formatOut,datestr 将返回具备默认格式 dd-mmm-yyyy HH:MM:SS (day-month-year hour:minute:second) 的文本。默认状况下,若是 HH:MM:SS = 00:00:00,则返回的文本的格式为 dd-mmm-yyyy。
  • 下表显示了可用于构造 formatOut 字符向量的符号标识符。可使用连字符、空格或冒号等字符来分隔字段。

 

符号标识符

说明

示例

yyyy

完全年份

1990, 2002

yy

两位数年份

90, 02

QQ

使用字母 Q 和一个数字的季度年份

Q1

mmmm

使用全名的月份

March, December

mmm

使用前三个字母的月份

Mar, Dec

mm

两位数月份

03, 12

m

使用大写首字母表示月份

M, D

dddd

使用全名的日期

Monday, Tuesday

ddd

使用前三个字母的日期

Mon, Tue

dd

两位很多天期

05, 20

d

使用大写首字母表示日期

M, T

HH

两位数小时(使用符号标识符 AM 或 PM 时无前导零)

05, 5 AM

MM

两位数分钟

12, 02

SS

两位数秒

07, 59

FFF

三位数毫秒

57

AM or PM

在表示时间的文本中插入的 AM 或 PM

3:45:02 PM

 

formatOut 字符向量必须遵循如下原则:

  • 每一个字段只能指定一次。例如,不能使用 'yy-mmm-dd-m',由于它有两个月份标识符。一种例外状况是,能够将一个 dd 实例与其余日期标识符的任何一个实例结合使用。例如,'dddd mmm dd yyyy' 是有效输入。
  • 当您使用 AM 或 PM 时,还须要提供 HH 字段。
  • QQ 只能单独使用或与年份设定符一块儿使用。

下表列出了可与 datestr 一块儿使用的预约义日期格式。

 

序号

显示格式

举例

0

‘dd-mmm-yyyy HH:MM:SS‘

 '16-Aug-2019 11:42:46'

1

‘dd-mmm-yyyy‘

 '16-Aug-2019'

2

‘mm/dd/yy‘  

 '08/16/19'

3

‘mmm‘

'Aug'

4

‘m‘ 

 'A'

5

‘mm‘   

 '08'

6

‘mm/dd‘

 '08/16'

7

‘dd‘       

 '16'

8

‘ddd‘ 

 'Fri'

9

‘d‘

 'F'

10

‘yyyy‘

 '2019'

11

‘yy‘ 

  '19'

12

‘mmmyy‘ 

 'Aug19'

13

‘HH:MM:SS‘    

 '17:26:36'

14

‘HH:MM:SS PM‘

 ' 5:26:55 PM'

15

‘HH:MM‘   

 '17:27'

16

‘HH:MM PM‘

  ' 5:27 PM'

17

‘QQ-YY‘

  'Q3-19'

18

‘QQ‘

  'Q3'

19

‘dd/mm‘

  '16/08'

20

‘dd/mm/yy‘     

 '16/08/19'

21

‘mmm.dd,yyyy HH:MM:SS‘

 'Aug.16,2019 17:36:18'

22

‘mmm.dd,yyyy‘ 

  'Aug.16,2019'

23

‘mm/dd/yyyy‘

 '08/16/2019'

24

‘dd/mm/yyyy‘ 

 '16/08/2019'

25

‘yy/mm/dd‘

  '19/08/16'

26

‘yyyy/mm/dd‘

  '2019/08/16'

27

‘QQ-YYYY‘

 'Q3-2019'

28

‘mmmyyyy‘

 'Aug2019'

29

 (ISO 8601) ‘yyyy-mm-dd‘ 

 '2019-08-16'

30

 (ISO 8601) ‘yyyymmddTHHMMSS‘  

20190816T174016'

31

‘yyyy-mm-dd HH:MM:SS‘

 '2019-08-16 17:40:28'

 

DateStringIn - 要转换的表示日期和时间的文本

  • 要转换的表示日期和时间的文本,指定为单个字符向量、字符向量元胞数组或字符串数组,其中每一行对应一个日期和时间。
  • datestr 将双字符年份(例如 '79')视为处于以当前年份为中心的 100 年范围内。
  • 表示日期和时间的全部文本的日期格式必须相同,而且它们必须为下列日期格式之一。

 

表示日期和时间的文本的格式

示例

'dd-mmm-yyyy HH:MM:SS'

2000/3/1 15:45

'dd-mmm-yyyy'

1-Mar-00

'mm/dd/yyyy'

03/01/2000

'mm/dd/yy'

03/01/00

'mm/dd'

3月1日

'mmm.dd,yyyy HH:MM:SS'

Mar.01,2000 15:45:17

'mmm.dd,yyyy'

Mar.01,2000

'yyyy-mm-dd HH:MM:SS'

2000/3/1 15:45

'yyyy-mm-dd'

2000/3/1

'yyyy/mm/dd'

2000/3/1

'HH:MM:SS'

15:45:17

'HH:MM:SS PM'

3:45:17 PM

'HH:MM'

15:45

'HH:MM PM'

3:45 PM