目的
DateTimeが便利なので、DateTime::Format::*で、Streaming APIで流れてくる、こういう表記 "Fri Jan 22 13:52:17 +0000 2010" を上手くパースしたい。
この表記方法は、古き良き時代を感じさせるctime()に由来するものであるとのこと。日付の表記に関するノート
現状
DateTime::Format::HTTP, DateTime::Format::Mail は失敗。
ただし、+0000をUTCとかGMTに置換すればDateTime::Format::HTTPでOK
DateTime::Format::DateParse は成功。これを使うべき。
DateTime::Format::Strptime で自作しても可(DIY派専用)
コード片
use DateTime::Format::DateParse;
my $dt = DateTime::Format::DateParse->parse_datetime('Fri Jan 22 13:52:17 +0000 2010');
use DateTime::Format::Strptime;
my $formatter = DateTime::Format::Strptime->new(
pattern => '%a %b %d %T %z %Y',
locale => 'en_US',
);
my $dt = $formatter->parse_datetime('Fri Jan 22 13:52:17 +0000 2010');
0 コメント:
コメントを投稿