Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ms access 在Jet4中,日期时间和数字格式是如何编码的?_Ms Access_Jet - Fatal编程技术网

Ms access 在Jet4中,日期时间和数字格式是如何编码的?

Ms access 在Jet4中,日期时间和数字格式是如何编码的?,ms-access,jet,Ms Access,Jet,我正在编写一个低级工具来扫描和恢复损坏的Jet4 MDB文件中的数据。我正在浏览页面、解析行和解码列 如果我有Datetime字段的原始8字节值,如何将其转换为日期的字符串表示形式,例如“MM-DD-YY HH:MM:SS” 如果我有单字段大小和3位小数的数字字段的原始4字节值,如何将该值转换为浮点/双精度 是否有任何文档描述所有访问字段是如何编码和存储在磁盘上的 谢谢。否。JET格式是Microsoft专有的,没有文档记录 至于日期数据类型,这只是一个双精度 双精度和单精度都不能携带格式。正如

我正在编写一个低级工具来扫描和恢复损坏的Jet4 MDB文件中的数据。我正在浏览页面、解析行和解码列

如果我有Datetime字段的原始8字节值,如何将其转换为日期的字符串表示形式,例如“MM-DD-YY HH:MM:SS”

如果我有单字段大小和3位小数的数字字段的原始4字节值,如何将该值转换为浮点/双精度

是否有任何文档描述所有访问字段是如何编码和存储在磁盘上的


谢谢。

否。JET格式是Microsoft专有的,没有文档记录

至于日期数据类型,这只是一个双精度


双精度和单精度都不能携带格式。正如您所提到的,这些是标准的浮点值。

否。JET格式是Microsoft专有的,没有文档记录

至于日期数据类型,这只是一个双精度

双精度和单精度都不能携带格式。正如您所提到的,这些都是标准的浮点值

如果我有Datetime字段的原始8字节值,如何将其转换为日期的字符串表示形式,例如“MM-DD-YY HH:MM:SS”

Access将日期/时间值存储为64位(8字节)
Double
little-endian格式的值。整数部分表示访问“epoch”(1899-12-30 00:00:00)之前或之后的天数,小数部分的绝对值表示该天的时间部分(例如,0.5=中午)。例如,在Python中,我们将字节转换为
datetime
值,如下所示:

从datetime导入datetime,timedelta
导入结构
#从.accdb或.mdb文件检索的字节数
d_as_bytes=b'\x35\x07\x2F\x2C\x93\x63\xDD\xC0'
d_as_double=struct.unpack('
如果我有Datetime字段的原始8字节值,如何将其转换为日期的字符串表示形式,例如“MM-DD-YY HH:MM:SS”

Access将日期/时间值存储为64位(8字节)
Double
值的小端格式。整数部分表示访问“历元”(1899-12-30 00:00:00
)之前或之后的天数,小数部分的绝对值表示该天的时间部分(例如,0.5=正午)例如,在Python中,我们将字节转换为
datetime
值,如下所示:

从datetime导入datetime,timedelta
导入结构
#从.accdb或.mdb文件检索的字节数
d_as_bytes=b'\x35\x07\x2F\x2C\x93\x63\xDD\xC0'

d_as_double=struct.unpack('你确定要重新发明这个轮子吗?不管怎样,我会看看它的来源,例如,你可以尝试看看其他开源程序来回答这些问题,比如(java)或(C).Mdbtools有一个特殊的文件,包括他们关于jet如何存储东西的文档。你确定要重新发明这个轮子吗?不管怎样,我会看看源代码,例如,你可以尝试看看其他开源程序来回答这些问题,例如(java)或(C).Mdbtools有一个特别的文件,包括他们关于jet如何存储东西的文档。正如我在主帖子的评论中所说,Mdbtools的作者制作了一个文件,其中包含一些关于jet如何存储东西的文档,可以找到这些文档,谢谢@ErikvonAsmuth,看起来非常全面。我的意思是缺少官方文档。正如我在在主要帖子上,mdbtools的作者制作了一个文件,其中包含一些关于jet如何存储东西的文档,可以在这里找到,谢谢@ErikvonAsmuth,这看起来非常全面。我的意思是缺少官方文档。