datestr

转自https://ww2.mathworks.cn/help/matlab/ref/datestr.html

datestr

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

全页折叠
 

说明

示例

DateString = datestr(t) 将输入数组 t 中的日期时间值转换为表示日期和时间的文本。

datestr 函数返回包含 m 行的字符数组,其中 m 是 t 中的日期时间值的总数。默认情况下,datestr 以 day-month-year hour:minute:second 格式返回文本。如果 hour:minute:second 是 00:00:00,则返回的文本的格式为 day-month-year。

注意

虽然 datestr 返回表示日期和时间的文本,但建议您使用 datetime 值来表示时间点,然后使用 charcellstr 或 string 函数将其转换为文本。

示例

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

示例

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

示例

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

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

示例

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

示例

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

 

示例

全部折叠

将日期时间数组转换为日期字符串

t = [datetime('now');datetime('tomorrow')]
t = 2x1 datetime array
   30-Jul-2019 17:09:35
   31-Jul-2019 00:00:00

DateString = datestr(t)
DateString = 2x20 char array
    '30-Jul-2019 17:09:35'
    '31-Jul-2019 00:00:00'

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

 
 

将日期向量转换为文本

DateVector = [2009,4,2,11,7,18];

datestr(DateVector)
ans = 
'02-Apr-2009 11:07:18'

datestr 以默认格式返回表示日期和时间的文本。

 
 

将日期和时间转换为特定格式

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

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

formatOut = 'mm/dd/yy';
datestr(now,formatOut)
ans = 
'07/30/19'

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

formatOut = 2;
datestr(now,formatOut)
ans = 
'07/30/19'

可以重新设置日期和时间的格式,也可以显示毫秒。

dt = datestr(now,'mmmm dd, yyyy HH:MM:SS.FFF AM')
dt = 
'July 30, 2019  5:11:24.788 PM'
 
 

将 12 小时制时间字符串转换为等效的 24 小时制形式

将 12 小时制时间 05:32 p.m. 转换为其等效的 24 小时制形式。

datestr('05:32 PM','HH:MM')
ans = 
'17:32'

将 24 小时制时间 05:32 转换为其等效的 12 小时制形式。

datestr('05:32','HH:MM PM')
ans = 
' 5:32 AM'

在 formatOut 输出文本中使用 AM 或 PM 不影响会实际成为文本的一部分的字符;它们只确定是否包括这些字符。MATLAB® 基于输入的时间选择 AM 或 PM

 
 

从自定义格式转换日期字符串

在 datestr 内调用 datenum 以指定表示日期的输入文本的格式。

formatOut = 'dd mmm yyyy';
datestr(datenum('16-04-55','dd-mm-yy',1900),formatOut)
ans = 
'16 Apr 1955'
 
 

转换多个日期字符串

以元胞数组传递多个表示日期的字符向量来进行转换。

所有输入日期必须使用相同的格式。例如,以下命令便传递了三个全部使用 mm/dd/yyyy 格式的日期。

datestr(datenum({'09/16/2007';'05/14/1996';'11/29/2010'}, ...
    'mm/dd/yyyy'))
ans = 3x11 char array
    '16-Sep-2007'
    '14-May-1996'
    '29-Nov-2010'

datestr 以 day-month-year 格式返回由转换后的日期构成的一个字符数组。

 
 

使用不在正常范围内的值转换日期字符串

在 datestr 内调用 datenum,为下面不在正常范围内的日期 (month=13) 返回预期值。

 

datestr(datenum('13/24/88','mm/dd/yy'))
ans = 
'24-Jan-1989'
 
 

使用基准年份

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

使用 1900 作为基准年份。

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

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

PivotYear = 2000;
datestr(DateStringIn,formatOut,PivotYear)
ans = 
'16-Apr-2055'
 
 

以本地语言返回日期字符串

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

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

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

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

str = datestr(DateNumber,formatOut)
str =
July-17-1987

在本例中,输出默认为英语语言。

输入参数

全部折叠

t - 日期和时间
datetime 数组

日期和时间,指定为 datetime 数组。

数据类型: datetime

DateVector - 日期向量
矩阵

日期向量,指定为 m×6 矩阵,其中 m 是完整(六个元素)日期向量的数目。DateVector 的每个元素必须为正整数或负整数值,但秒元素例外,它可以为小数。如果某元素不在常规范围内,则 datestr 会同时调整该日期向量元素及其前面的元素。例如,如果分钟元素为 70,则 datestr 会将小时元素调整 1 并将分钟元素设置为 10。如果分钟元素为 -15,则 datestr 会将小时元素减少 1 并将分钟元素设置为 45。月份值是一个例外。datestr 将小于 1 的月份值设置为 1

示例: [2003,10,24,12,45,07]

数据类型: double

DateNumber - 日期序列值
正双精度数的数组

日期序列值,指定为正双精度数的数组。

示例: 731878

数据类型: double

formatOut - 表示日期和时间的输出的格式
-1 (默认) | 字符向量 | 字符串标量 | 整数

表示日期和时间的输出的格式,指定为由符号标识符组成的字符向量或字符串标量,或者与预定义的格式对应的整数。如果不指定 formatOutdatestr 将返回具有默认格式 dd-mmm-yyyy HH:MM:SS (day-month-year hour:minute:second) 的文本。默认情况下,如果 HH:MM:SS = 00:00:00,则返回的文本的格式为 dd-mmm-yyyy

下表显示了可用于构造 formatOut 字符向量的符号标识符。可以使用连字符、空格或冒号等字符来分隔字段。

 

注意

描述日期和时间格式的符号标识符不同于描述 datetime 数组的显示格式的标识符。

原文地址:https://www.cnblogs.com/hjj-fighting/p/13572010.html