NTFSのタイムスタンプ
どうやらNTFSでは1601年1月1日0時0分からの100ナノ秒単位でタイムスタンプを計算しているらしい。
バイナリエディタなどで16進数で表現されたときにMACTimeなどを読めるように変換するときのプログラムのメモ.
# coding: utf-8 import datetime val = 0x01d11121d618281a #16進数で表現された時刻 s100nano = 0x989680 # 100ナノ秒単位での1秒 d = datetime.datetime(1601, 1, 1, 0, 0, 0) # 経過秒数を足して、日本時間に修正 print d + datetime.timedelta(seconds=val/s100nano,hours=9)