end0tknr's kipple - 新web写経開発

http://d.hatena.ne.jp/end0tknr/ から移転しました

convert unix time to windows nt time

SMB for perl であるファイルのタイムスタンプをみると unix time にしては、妙に長い文字列。

どうやら、windows nt time という時刻表示らしく、 SMB::Time for perl において、その相互変換がある

以下、 https://metacpan.org/pod/SMB::Time の抜粋

my $nttime_factor = 10_000_000;
my $nttime_offset = 11_644_473_600;

sub from_nttime ($) {
    my $nttime = shift || return 0;
    return $nttime / $nttime_factor - $nttime_offset;
}

sub to_nttime ($) {
    my $time = shift || return 0;
    return ($time + $nttime_offset) * $nttime_factor;
}