#navi(../)
* UNIX時間をYYYYMMDDHHMMSSに変換する [#h0eefc65]
UNIX時間をYYYYMMDDHHMMSSに変換するサンプルコードを紹介します。~
以下のサンプルコードはUNIX時間を年月日時分秒に変換し出力します。~
GMTとローカル時間を表示するようになっています。
#contents
#htmlinsertpcsp(ll-top.html,ll-sp.html)
* 関連記事 [#se479519]
-[[Perlでstrftimeを使い日時を表示する>Perl/サンプル/Perlでstrftimeを使い日時を表示する]]
* サンプルコード [#jc0b0bf4]
#ref(timet_conv.pl)
#!/usr/bin/perl
use strict;
use warnings;
if ( @ARGV != 1 ) {
die "Usage:\n\t$0 UNIX-TIME\n";
}
my $unix_time = shift;
my ($sec, $min, $hour, $mday, $mon, $year);
($sec, $min, $hour, $mday, $mon, $year) = gmtime($unix_time);
$year += 1900;
$mon += 1;
printf("GMT:\t%04d/%02d/%02d %02d:%02d:%02d\n", $year ,$mon, $mday, $hour, $min, $sec);
($sec, $min, $hour, $mday, $mon, $year) = localtime($unix_time);
$year += 1900;
$mon += 1;
printf("LOCAL:\t%04d/%02d/%02d %02d:%02d:%02d\n", $year ,$mon, $mday, $hour, $min, $sec);
* サンプルコードの実行結果 [#p817d296]
UNIX標準時間として0を指定すると以下のような出力になります。~
動作させたマシンのロケールがJSTなのでローカル時間は標準時+9時間となっていることが確認できます。
$ ./timet_conv.pl 0
GMT: 1970/01/01 00:00:00
LOCAL: 1970/01/01 09:00:00
以上、UNIX時間をYYYYMMDDHHMMSSに変換する方法でした。
#htmlinsertpcsp(ll-btm.html,ll-sp.html)