VMS 时间戳默认时间是 1858 年 11 月 17 日,需要转换为正常的时间戳,如果直接使用 time 读取 18581117 再加上毫秒然后进行转换会导致溢出。百度了一下没找到类似问题解答,所以在 V2 记录一下方便后来遇到类似问题的人。 可以使用 timedelta 就可以避免溢出的问题
import datetime
start_date=datetime.datetime.strptime('18581117','%Y%m%d')
vms_timestamp=4453016000000000
date=start_date+datetime.timedelta(millisecondes=vms_timestamp/10000)
print(date.strftime('%Y%m%d%H%M%S')
1
starzh 2020-10-21 08:25:20 +08:00
是 milliseconds 不是 millisecondes,print 少了一个’)‘
python 3.8.5 我运行了一下没有问题,结果是’18721226225320‘ |
2
user8341 2020-10-21 13:57:47 +08:00
为什么要处理古代的日期
|