2008-06-24 HTTP::Date Perl 日付8桁(YYYYMMDD)フォーマットの文字列を、Cでいうtime_t*1に変換するのに、PerlではHTTP::Dateが使える。ダンコガイも推奨。 use HTTP::Date; $string = "20080301"; $time = str2time($string); $time -= 60 * 60 * 24; @a = localtime($time); printf( "%4d%02d%02d\n", $a[5]+1900, $a[4]+1, $a[3]); *1:時刻を表す型で、UNIXエポックと呼ばれる基準時間――1970年1月1日00:00:00(UTC)からの経過秒数で表現される時間。