【发布时间】:2015-07-10 10:13:59
【问题描述】:
我有这样的日期/时间:2015-07-31T13:30:00.000+01:00 我想使用 Perl 和 Time::Piece->strptime
将其转换为正常的日期和时间这是我的代码:
sub changeDateFormat {
my ($date, $fromFormat, $toFormat) = (@_);
return Time::Piece->strptime($date, $fromFormat)->strftime($toFormat);
}
来电:
print changeDateFormat($that_date, '%Y-%m-%dT%H:%M:%S.%N+%z', '%Y:%m:%d');
我认为 .000 是纳秒,+01.00 代表时区。 但是给定的代码给出了这个: 在 /usr/lib64/perl5/Time/Piece.pm 第 470 行解析时间出错
感谢任何帮助。
【问题讨论】:
-
见
DateTime::Format::Strptime..它有%N和%z.. -
该格式称为 ISO 8601 日历日期和时间,带有扩展格式的区域指示符。 Time::Moment->from_string 可以用来解析它。
标签: perl datetime format iso8601 strptime