我用C#调用DBF文件的时候遇到点问题。我手上有两套DBF文件,一套是在网上下的一套是我要用的,在网上下的那套用以下代码读取没有问题,说明代码没有错误,但是用这套代码读我要用的DBF文件的时候会提示“ERROR [42S02] [Microsoft][ODBC dBase 驱动程序] Microsoft Jet 数据库引擎找不到对象'book_abstract.dbf'。请确定对象是否存在,并正确地写出它的名称和路径。”这个异常,我的那套DBF文件在foxpro里面可以正常查看说明文件没有损坏就是不知道为什么读不了。我的那套DBF文件每个文件都带有一个同名的FPT文件这种类型的是不是不能用下面的方法读啊~~如果不能要怎么写连接串啊~~System.Data.Odbc.OdbcConnection conn = new System.Data.Odbc.OdbcConnection();
string connStr = @"Driver={Microsoft dBASE Driver (*.dbf)};Driverid=277;Dbq=d:\";
conn.ConnectionString = connStr;
conn.Open();
OdbcDataAdapter da = new OdbcDataAdapter("select * from book_abstract", conn);
conn.Close();
DataTable dt = new DataTable();
da.Fill(dt);//读带有同名FPT文件的DBF文件时候在这一行报错

解决方案 »

  1.   

    Visual FoxPro数据文件来的,我以前也读过,不过忘记代码了,回家看看还能找的到不,用C#怎么高级的语言去都哪个东西,真是让我痛苦了好久
      

  2.   

    http://topic.csdn.net/u/20081212/14/ac2c7d9b-8b96-4f68-8a88-b6818e2e311c.html当年我求答的结果,我还要往里面写啊
      

  3.   

    没有用过,
    使用OLEDB怎么样?
      

  4.   

    string connStr = @"Driver={Microsoft dBASE Driver (*.dbf)};Driverid=277;Dbq=d:\";
    ---------------
    把这个库文件,放到项目里测试了吗?
    用server.读取当前项目。
      

  5.   

    OLEDB可以读取但是需要装插件。我那句子试验了一共两套DBF,第一套OLEDB和ODBC都可以读,第二套ODBC读不出OLEDB可以读。
    就是不知道为什么。第二套的DBF文件都带一个同名的FTP文件