0

最近,我从旧版TheOS-POS 系统共享了一个 TBK 文件转储。我的主要目标是从这个二进制文件中提取销售数据。

我试图用记事本打开文件,它看起来是加密的。

据我所知

  • tbk 是 FoxPro 可以理解的备忘录文件(在尝试这个的过程中)
  • tbk 是 DBase System 的文件格式,Database memo 备份文件
  • 有一个 python 库来解析 DBF 文件

问题

  1. 什么是备忘录备份文件?
  2. TBK 文件是否包含所有数据,我应该考虑解析它吗?
  3. 我是否应该从 TheOS POS 系统中寻找更标准的转储文件,如 DBF,以便我可以使用现有的 Python 库来获取数据?

非常感谢您的帮助!

4

1 回答 1

2

正如您所说,扩展名为 .TBK 的文件可能是 DBT 文件(属于dBASE 样式 DBF)或 FPT 文件(属于FoxPro 样式 DBF)的备份,仅提及最常见的文件。

通常,这些备忘录文件包含可变长度的自由格式信息,并且它们是按修改顺序编写的。每当写入 memo 值并将指向块开头的指针写入 DBF 中的 memo 字段时,就会分配一个新块;某些系统可能会覆盖比要写入的新值更长的旧孤立值,但并非所有系统都这样做。一些系统会删除重复值,但大多数不会。因此,如果没有它所属的 DBF,备忘录备份将毫无用处 - 通常,您甚至无法可靠地划分单个备忘录值或告诉给定备忘录值用于哪个记录和字段(没有任何类型的反向指针),除非根据实际内容进行猜测。大多数有趣的数据可能在实际 DBF 中的固定长度字段中,而不是在备忘录文件中。

这适用于 DOS 和 Windows - 不知道 TheOS/OASIS 是否使用通用文件结构。

加密也是如此。在 DOS 或 Windows 下,可以通过第三方组件对表文件进行加密,这些组件拦截 DBF 引擎和操作系统之间的文件操作。这些组件在用 FoxPro、dBASE 或 Clipper 编写 POS 系统时非常流行。在 TheOS 下,这是任何人的猜测......

于 2016-12-28T13:58:13.713 回答