在python中转换64位Windows日期时间

Dav*_*oni 2 python

我需要将Windows十六进制64位(大端)日期时间转换为python中可读的内容?

例如'01cb17701e9c885a'

转换为"星期二,2010年6月29日09:47:42 UTC"

任何帮助,将不胜感激.

Mar*_*nen 11

看起来像Win32 FILETIME值,其中:

包含一个64位值,表示自1601年1月1日(UTC)以来100纳秒间隔的数量.

转换:

from datetime import datetime,timedelta
dt = '01cb17701e9c885a'
us = int(dt,16) / 10.
print datetime(1601,1,1) + timedelta(microseconds=us)
Run Code Online (Sandbox Code Playgroud)

产量

2010-06-29 09:47:42.754212
Run Code Online (Sandbox Code Playgroud)