当前位置:  技术问答>linux和unix

谁做过dbf文件转文本文件的程序

    来源: 互联网  发布时间:2014-12-11

    本文导语:  我需要在unix下将dbf文件中的数据转成文本格式,大家给介绍点相关资料,有程序更好! | 给你一点dbf文件的结构: 记录的长度(以字节为单位)等于所有字段定义的长度之和。表文件中存储...

我需要在unix下将dbf文件中的数据转成文本格式,大家给介绍点相关资料,有程序更好!

|
给你一点dbf文件的结构:

记录的长度(以字节为单位)等于所有字段定义的长度之和。表文件中存储整数时低位字节在前。

表头记录的结构
字节偏移 说明 
0 文件类型
0x02FoxBASE
0x03FoxBASE+/dBASE III PLUS,无备注
0x30Visual FoxPro
0x43dBASE IV SQL 表文件,无备注
0x63dBASE IV SQL 系统文件,无备注
0x83FoxBASE+/dBASE III PLUS,有备注
0x8BdBASE IV 有备注
0xCBdBASE IV SQL 表文件,有备注
0xF5FoxPro 2.x(或更早版本)有备注
0xFBFoxBASE 
1 – 3 最近一次更新的时间(YYMMDD) 
4 – 7 文件中的记录数目 
8 – 9 第一个数据记录的位置 
10 – 11 每个数据记录的长度(包括删除标记) 
12 – 27 保留 
28 表的标记
0x01具有 .cdx 结构的文件
0x02文件包含备注。
0x04文件是数据库(.dbc)
请注意,这个字节可以包含任何上面值的和。例如,0x03 表明表具有结构化 .cdx 和一个备注字段。 
29 代码页标记 
30 – 31 保留,包含 0x00 
32 – n 字段子记录
字段的数目决定了字段子记录的数目。表中每个字段都对应一个字段子记录。 
n+1 头记录终止符(0x0D) 
n+2 到 n+264 此范围内的 263 个字节包含后链信息(相关数据库 (.dbc) 的相对路径)。如果第一个字节为 0x00,则该文件不与数据库关联。因此数据库文件本身总是包含 0x00。 


1 头记录中的第 8 到第 9 个字节指示数据文件中数据的起始位置。数据记录从删除标记字节开始。如果此字节为 ASCII 空格 (0x20),该记录没有删除标记,如果第一字节为星号 (0x2A),该记录有删除标记。在标记之后是字段记录中所命名各字段中的数据。

字段子记录结构
字节偏移 说明 
0 - 10 字段名(最多 10 个字符 —若少于 10 则用空字符 (0x00) 填充) 
11 字段类型
C–字符型
Y–货币型
N–数值型
F–浮点型
D–日期型
T–日期时间型
B–双精度型
I–整型
L–逻辑型
M–备注型
G–通用型
C–字符型(二进制)
M–备注型(二进制)
P–图片型 
12 - 15 记录中该字段的偏移量 
16 字段长度(以字节为单位) 
17 小数位数 
18 字段标记
0x01系统列(用户不可见)
0x02可存储 null 值的列
0x04二进制列(只适于字符型和备注型) 
19 – 32 保留 


有关对每个记录中字符的限制以及字段数目的最大值等详细内容,请参阅“Visual FoxPro 系统容量”。

说明
除非在文件中添加下列功能,否则 Visual FoxPro 将不修改按 FoxPro 2.x 文件格式保存的文件标头: 

支持 null 值


日期时间型、货币型及双精度型数据


字符字段和备注字段标记为二进制


在数据库 (.dbc) 文件中添加表 
提示 可以使用下面的公式求出表文件中字段的数目:(x – 296/32) 公式中,x 表示第一个记录的位置(表头记录的第 8 到第 9 个字节),296 表示 263(后链信息)+ 1(头记录终止符)+ 32(第一个字段子记录),32 是字段子记录的长度。

|
看看有关dbf的文件结构,直接用程序读出来.

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Linux下如何修改dbf字段值?
  • DBF的Java操作类库 JavaDBF
  • linux下能访问ms vfp 的dbf格式的数据库吗。怎么访问
  • DBF的JDBC驱动 StelsDBF
  • 请问哪位高手能指导小弟如何对一个DBF格式的表单访问,具体操作?高分在线等候!急!!!!!!
  • 网络技术 iis7站长之家
  • 高分求一个unix下调试工具(dbx dbf 等)的详细说明文档!谢谢


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3