作用:DBF數據庫格式是DOS系統中的dBase數據庫和FoxPro數據庫所使用的數據庫格式。如今,如果電腦上沒有安裝這兩款軟件,可以使用Excel打開。
數據結構
1. 數據文件.DBF結構分析
數據庫文件由頭記錄(header record)和數據記錄(data record)兩個部分組成。頭記錄從文件位置0開始,定義數據庫的結構及其它與數據庫有關的信息;數據記錄緊接在頭記錄後面,包含了字段的實際文本內容。
1.1. 頭記錄結構描述
字節00:數據庫文件開始及文件類型標誌,對應值如下:
0x02 FoxBASE文件,無備註字段
0x03 FoxBASE+/dBASE III PLUS文件,無備註字段 0x30 Visual FoxPro數據表文件
0x43 dBASE IV SQL表文件,無備註字段 0x63 dBASE IV SQL系統文件,無備註字段
0x83 FoxBASE+/dBASE III PLUS文件,有備註字段 0x8B dBASE IV文件,有備註字段
0xCB dBASE IV SQL表文件,有備註字段 0xF5 FoxPro 2.x(或以前版本)文件,有備註字段 0xFB FoxBASE文件,有備註字段
字節01-03:最近一次更新的時間(YYMMDD)。 字節04-07:數據庫文件記錄的數目。
字節08-09:第一個數據記錄的位置,等於頭記錄所佔的長度。
字節10-11:每個記錄的長度(包括刪除標誌),等於所有字段寬度之和再加1。 字節12-27:保留,爲0x00。
字節28-29:保留(VFP中已定義爲數據表標誌和代碼頁標誌)。 字節30-31:保留。
字節32-n:字段子記錄(field subrecord)。 字節n+1:頭記錄結束標誌0x0D。
(在VFP中,字節n+2-n+264還包含有.DBC文件路徑的相關信息。)
1.2. 字段子記錄結構描述
頭記錄第08-09字節指示了數據記錄的開始位置,每個數據記錄以刪除標誌開始(0x20或0x28),刪除標誌後面是記錄的具體內容。
字段描述信息從文件第32字節開始,每個字段佔32個字節。
字節00-10:字段名,爲ASCII字符串;字段名長度不足10個字符時,以空字符(0x00)填充。
字節11:字段類型,以大寫字母的ASCII碼形式存儲。
字節12-15:該字段在數據記錄中的偏移值(displacement),等於該字段爲止所有字段寬度之和;第一個字段爲1(即刪除標誌所佔的一個字節),其它字段該值等於上一字段的值加上本字段的寬度。 字節16:本字段的寬度(字節數)。
字節17:數字型、浮點型、雙精度型字段的小數位寬度。 字節18-31:保留。(字節18在VFP中已被定義爲字段標誌)
1.3. 數據記錄內容
除Genral、Picture等類型的字段以外,其它數據字段的實際體內容都是以ASCII碼文本形式存儲的,如數字型的4存儲爲0x34。
1.4. 數據庫文件結束標誌
在所有數據記錄內容之後,是數據庫文件的最後一個字節,即文件結束標誌0x1A。
1.5DBF文件中的數據類型:
代碼 數據類型 允許輸入的數據
C字符型 各種字符。
D日期型 用於區分年、月、日的數字和一個字符,內部存儲按照YYYYMMDD格式。
N數值型(Numeric) - . 0 1 2 3 4 5 6 7 8 9
L邏輯型(Logical) ? Y y N n T t F f (? 表示沒有初始化)。
M(Memo) 各種字符。
I 整型(Integer) 整型數據只用來表示整數,以二進制形式存儲,佔用4個字節。其取值範圍是:-21474836~21474836。