dbf的结构还是比较简单的,弄清楚结构之后,直接用文件读写操作即可进行。

解决方案 »

  1.   

    dbf库的结构是不是一定的?比如说:头737bytes,第一条纪录为空....有没有源程序?
      

  2.   

    好久之前我写过,不过那时侯是foxbase,很多书上都有,可能网上也有吧。
      

  3.   

    dbf有统一的结构特点,一般说来文件头长737个字节,而且尤其注意第一个记录为空。所以你只要从文件头跳过(737+length(每条记录的长度))字节。就可以读到真正的记录。其中前4个长度后是该DBF库的记录条数。用VC实现很简单:
                      int recordcount, recorder_number1=0, recorder_number2=0;
    f_show128.Seek(4L, CFile::begin);
    f_show128.Read(&recorder_number1, 2);
    f_show128.Read(&recorder_number2, 2);
                       recordcount = recorder_number2 * 256 + recorder_number1 - 1;