Datetime 解析64位二进制日期时间

Datetime 解析64位二进制日期时间,datetime,parsing,binary,Datetime,Parsing,Binary,我已经尝试解析很长一段时间了,但我就是无法得到它。我尝试了很多类型和转换器,但没有任何效果。我还搜索了所有我能搜索到的地方 以下是完整的数据块: 3D 08 41 CF AC D9 59 64 44 在哪里 3D-数据类型(长度的日期时间) 08-数据长度和数据(日期时间) 41 CF AC D9 59 64 44=2020年10月8日10:38:46 UTC 所有其他数据都是Big endian,这个区块,也许,是相同的 最接近的二进制数据是Apple Absolute和Ole auto

我已经尝试解析很长一段时间了,但我就是无法得到它。我尝试了很多类型和转换器,但没有任何效果。我还搜索了所有我能搜索到的地方

以下是完整的数据块:
3D 08 41 CF AC D9 59 64 44

在哪里

  • 3D
    -数据类型(长度的日期时间)
  • 08
    -数据长度和数据(日期时间)
  • 41 CF AC D9 59 64 44
    =
    2020年10月8日10:38:46 UTC

所有其他数据都是Big endian,这个区块,也许,是相同的

最接近的二进制数据是Apple Absolute和Ole automation(当前数据用DCode编码并与我的数据进行比较),但它们不是。后端很旧,是用Java编写的,也许这会是某种线索

编辑 多亏了@GiacomoCatenazzi,生意才开始起步。我认为时间的起点是1970年1月1日,但不是unix时代。按小时或按秒(如秒断裂,但不含毫秒)进行修改是有区别的。 我现在看到的主要问题是找出有秒或无秒的日期时间。 第一个字节
41
-可能是真值。最后2或3个字节通常相等

相对零时间
  • 3C
    -
    3D C2 3F BF
    -1m
其中
3C
-数据类型(日期时间为4字节)

  • 3D 08
    -
    41 CE E1 1F E0 00 00
    -1s
  • 3D 08
    -
    41 CE E1 1F E0 02 22
    1s
  • 3D 08
    -
    41 CF AC EB BF A2 A2当前日期时间(10月15日2020 02:59:15 GMT+0300)
  • 3C
    -
    3D C2 3F C0
    0-中心
  • 3C
    -
    3D C2 3F C1
    1m
  • 3C
    -
    3D C2 3F FC
    1小时
  • 3C
    -
    3D C2 45 60
    1天
  • 3C
    -
    3D C2 F3 C0
    1个月
  • 3C
    -
    3D CA 44 E0
    1年
  • 3C
    -
    3E 8A BF E0
    25年(1994年12月26日03:00:00 GMT+0300)
  • 3C
    -
    3F 59 D6 CC
    仅限当前日期(2020年10月15日)(
    26711820
    -自1970年1月1日起的分钟数)

您是否有更多关于何处/哪些程序/协议使用这种格式的信息?你能试试不同的价值观吗?e、 g.
00
?在这种情况下,您可以了解字节是如何工作的。其他:能否尝试编码,例如1970年1月1日00:00 UTC?否则,您是否可以尝试设置两个日期(和值),例如距离接近一分钟?要进行逆向工程,我们需要更多的信息(和测试)。否则,你应该更好地描述你的想法的来源data@GiacomoCatenazzi,我添加了我要查找的信息。很明显,事情在时间上非常简单。但是几秒钟。。。程序语言是RAD。小时错误:可能是当地时间(所以是夏季时间)。秒:GPS使用自原点起的秒数,UNIX更喜欢“墙时间”,因此它放弃闰秒(自GPS时间起18秒)。最后一位重复:这似乎是一个除法。也可能有两个字段。在任何情况下,我都无能为力:这将需要更多的时间(和测试)。它不记得我有任何已知的结构,但datetime在不同的协议中是非常不同的