首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用头字节计算可视化FoxPro表中的记录数?

如何使用头字节计算可视化FoxPro表中的记录数?
EN

Stack Overflow用户
提问于 2020-04-05 00:32:38
回答 2查看 171关注 0票数 0

我们有一个经常被损坏的表,并出现"Not a table“错误。运行DBF Doctor的演示版本时,它报告标题有错误的记录计数。

看看我能找到的一个例子,我真的不确定如何使用256为基数来计算记录数。

字节4-7具有DBF中的记录数。

(https://www.dbf2002.com/dbf-file-format.html)

我使用一个小Java程序读取的DBF标头的前10个字节是:

代码语言:javascript
运行
复制
0 -> 0
1 -> 20
2 -> 3
3 -> 31
4 -> 81
5 -> 113
6 -> 0
7 -> 0
8 -> 0
9 -> 0
10-> 0

谁能帮我弄清楚如何计算DBF中的记录数?

我想看看我是否可以写一个快速实用程序来解决这个问题。

提前谢谢你,

EN

回答 2

Stack Overflow用户

发布于 2020-04-06 21:31:06

您可以通过乘以256来计算行数。对于每个字节(从最低到最高有效),必须将该字节的值乘以(256^n)。

对于您的示例:

代码语言:javascript
运行
复制
81 = 81
113 * 256 = 28928
0 * 256 * 256 = 0
0 * 256 * 256 * 256 = 0

81 + 28928 + 0 + 0 = 29009

计算也是在this thread中讨论的,但它是FoxPro代码。

通过使用Hex-Editor查看您的dbf,可以更好地理解这个主题。

票数 1
EN

Stack Overflow用户

发布于 2020-04-09 20:58:00

如果您确实有VFP可用,

VFP Code to fix file headers是可用的,可以直接在VFP中完成。相对简单的程序,通过低级别的文件打开/写入操作来计算文件头记录的计数、修复和调整。我在过去不止一次使用过。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61031245

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档