首页 > 解决方案 > datetime strptime 返回错误的模式

问题描述

我从文件中提取日期,并使用此命令创建日期时间对象,然后将 1 添加到它以获取下一个日期。

my $parseit = DateTime::Format::Strptime->new(pattern => '%Y%m%d');
my $lastdate = "20190115";
my $tempdate = $parseit->parse_datetime($lastdate);
my $date_up1 = $tempdate->add(days => 1);

但是在打印出变量 $date_up1 时,我总是以 %Y-%m-%d 的形式得到它。我怎样才能让它以我选择的模式返回。

标签: perl

解决方案


strptime 因此 DateTime::Format::Strptime 默认情况下仅指示您如何将输入解析为 DateTime 对象。DateTime 对象默认为您所看到的特定字符串化。为了以某种方式对其进行字符串化,您可以使用它的strftime方法。

print $date_up1->strftime('%Y%m%d');

推荐阅读