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
-1m3D C2 3F BF
3C
-数据类型(日期时间为4字节)
-3D 08
-1s41 CE E1 1F E0 00 00
-3D 08
1s41 CE E1 1F E0 02 22
-3D 08
41 CF AC EB BF A2 A2当前日期时间(10月15日2020 02:59:15 GMT+0300)
-3C
0-中心3D C2 3F C0
-3C
1m3D C2 3F C1
-3C
1小时3D C2 3F FC
-3C
1天3D C2 45 60
-3C
1个月3D C2 F3 C0
-3C
1年3D CA 44 E0
-3C
25年(1994年12月26日03:00:00 GMT+0300)3E 8A BF E0
-3C
仅限当前日期(2020年10月15日)(3F 59 D6 CC
-自1970年1月1日起的分钟数)26711820
00
?在这种情况下,您可以了解字节是如何工作的。其他:能否尝试编码,例如1970年1月1日00:00 UTC?否则,您是否可以尝试设置两个日期(和值),例如距离接近一分钟?要进行逆向工程,我们需要更多的信息(和测试)。否则,你应该更好地描述你的想法的来源data@GiacomoCatenazzi,我添加了我要查找的信息。很明显,事情在时间上非常简单。但是几秒钟。。。程序语言是RAD。小时错误:可能是当地时间(所以是夏季时间)。秒:GPS使用自原点起的秒数,UNIX更喜欢“墙时间”,因此它放弃闰秒(自GPS时间起18秒)。最后一位重复:这似乎是一个除法。也可能有两个字段。在任何情况下,我都无能为力:这将需要更多的时间(和测试)。它不记得我有任何已知的结构,但datetime在不同的协议中是非常不同的