旧的C ++应用程序将日期和时间分开。应用程序显示记录为具有日期/时间,如下所示:
10/21/2015 15:17:22
但数据存储如下:
13078(+29220) 3857
我知道我们的OADate的偏移量为29220
。所以13078 + 29220 = 42298
,是10/21/2015
的OADate。但我不知道3857应该如何等于15:17:22
实际字段为:
int _dateValue;
struct time _timeValue;
另一个例子:
10/02/2015 08:40:50
13059 (+29220) 2088
我相信时间最初取自c struct time
函数gettime
该结构具有拉小时,分钟和秒的功能。但我只有基值,而且我正在使用C#和SQL将该基值转换为时间。
答案 0 :(得分:1)
3857是0xF11。重合符号0xF == 15和0x11 == 17。
2088是0x828。巧合的是0x8 == 8和0x28 == 40。
看起来时间的高字节表示小时数,低字节表示分钟数,秒数则在位桶中抛出。