解码时间和日期格式

Decoding a Time and Date Format

我相机上的 Olympus 网络服务器 returns 日期我无法解码为人类可读的格式。

我有几个值可以使用。

所以我假设这只是自 xxx 以来的天数,结果发现这是 1965 年 11 月 5 日,所以我猜这是错误的。

另外时间也是一个整数值。

正确的值为 UTC+1

也许有人知道如何解码这两种格式。

它们是 DOS 时间戳

dos 时间戳是一种位域格式,日期和时间的部分编码到数字中的相邻位,这里是一些工作示例。

number  hex     binary
17822 0x459E = 0010 0101 1001 1110
               YYYY YYYM MMMD DDDD                  

Y=001 0010 = 34 ( add 1980 to get 2014) 
M=1100     = 12
D=1 1110   = 30

17953 0x4621 = 0010 0110 0010 0001
Y=001 0011   = 35 (2015)
M=0001       = 1
D=0 0001     = 1

17954  0x4622 = 0010 0110 0010 0010
Y=001 0011   = 35 (2015) 
M=0001       = 1
D=0 0010     = 2

时间也差不多

38405 = 0x9605 = 1001 0110 0000 0101
                 HHHH HMMM MMMS SSSS
H= 1 0010 = 18
M=11 0000 = 48
S= 0 0101 = 5 (double it to get 10)