雖然Excel已經成為最常用的資料表格軟體,不過一直沿用至今的DBF格式類資料表格檔案仍然在廣泛使用。而且Excel和部分DBF格式的檔案不相容,Excel在開啟它們時會出現“不能識別的檔案格式”錯誤。如何解決這個問題呢? 簡單地說,製作DBF檔案的軟體經曆了Dbase、Foxbase、Foxpro、Visual Foxpro這四個階段,儘管這些軟體產生的檔案的副檔名都是DBF,但是其內部格式並不相同(格式標誌是檔案的第一個位元組),總共有十一種之多。在Visual Foxpro 3.0之前,DBF檔案稱為資料庫,但自Visual Foxpro 3.0開始,DBF檔案就稱為資料表檔案,其檔案格式標誌為30或者31(十六進位)。Excel不能正確開啟的DBF檔案就是後者。 筆者在實踐中發現,Excel在識別DBF檔案的具體格式時只辨認第一個位元組,所以我們只要將檔案格式標為30或者31的改為03(十六進位),Excel就能夠正確開啟DBF檔案。這裡還有一點需要說明,上述修改方法僅適用於不包括備忘型/通用型等複雜資料類型的DBF資料表檔案。如果DBF資料表檔案包含複雜資料類型,修改後的檔案在Excel中開啟時可能會產生資料丟失現象。 使用WinHex等十六進位編輯軟體可以很容易地對檔案進行修改,沒有這類軟體也可以使用Windows系統所含的一個小程式:Debug。如果你感覺到使用這個小工具修改有點兒困難,可以參照如下方法: 假定要修改 C:/database/fox 下的表檔案 student.dbf。 首先,利用“記事本”產生純文字檔案modify.txt(儲存在C:/database目錄下),檔案內容如下: n C:/database/fox/student.dbf l e 100 03 w q 其次,進入MS-DOS方式(Windows 2000及其以後版本中的命令提示字元),在命令提示字元下鍵入如下命令: debug < c:/database/modify.txt 這樣就很輕鬆地完成了修改。 如果你要修改某個表檔案的話,要做的就是修改上述兩個絕對路徑。
更多技術文章請參看施昌權的個人網站: http://www.joyvc.cn