Matlab - 将十进制日期时间转换为字符串格式

时间:2018-03-02 16:33:28

标签: matlab datetime

我正在尝试将以下日期时间转换为Matlab中的字符串格式。

20121003.03

它对应2012年10月3日凌晨03:00。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您可以在创建datetime对象时指定自定义输入格式。您的问题似乎表明该对象已经是一个日期时间对象,但此时问题很简单,只需在其上调用datestr(下面脚本的最后一行)。我在这里假设输入是一个浮点表示。

dval = 20121030.0330;

% Convert floating point number to a string
dstr = sprintf('%013.04f', dval);

% Convert string to a datetime object
dtime = datetime(dstr, 'InputFormat', 'yyyyMMdd.hhmm');

% Convert the datetime object into a formatted string
dstr2 = datestr(dtime);

输出:

dstr2 = '30-Oct-2012 03:00:00'

如果您希望输出格式与默认值不同,则需要指定datestr的输出格式。有关详细信息,请参阅documentation