为什么来自Time :: Piece的strptime不能解析我的格式?

Dom*_*que 1 perl datetime strptime

我的同事(已经离开公司)写了一堆脚本,包括批处理和Perl脚本,我正在摆脱区域设置依赖.

在最后一个Perl脚本中,他编写了以下代码:

my $format = "%d.%m.%Y %H:%M";
my $today_converted = Time::Piece->strptime($today, $format) - ONE_HOUR - ONE_HOUR - ONE_HOUR - ONE_HOUR - ONE_HOUR; 
Run Code Online (Sandbox Code Playgroud)

(想法是在特定日期的午夜前五个小时)

$today似乎是"03/04/2017"(代表4月3日(欧洲日期格式)),这似乎不被Time :: Piece实现理解:

Error parsing time at C:/Perl64/lib/Time/Piece.pm line 481.
Run Code Online (Sandbox Code Playgroud)

我可以使用哪种格式,Time :: Piece Perl实现可以理解?

sim*_*que 5

在格式中,您将点.作为日期分隔符,但在数据中您有斜杠/.这就是为什么它不解析.它需要完全匹配.