ファイルプロパティヘッダに1601/1/1から100ナノ秒単位で数えた秒数が入っているので、それを計算すればOK。
#!/usr/local/bin/ruby
require 'date'
data=$stdin.read(4096);
pos=data.index(["A1DCAB8C47A9CF118EE400C00C205365"].pack("H*")) + 16*3;
puts Date.new(1601,1,1) + data[pos,8].unpack("Q")[0] * 1e-7 / 60 / 60 / 24
参考にしたサイトは↓(時刻の計算方法が書いてないので注意)
http://uguisu.skr.jp/Windows/format_asf.html
0 件のコメント:
コメントを投稿