使用c#在.dbf文件中获取数据

时间:2012-07-06 06:22:27

标签: c# dbf

如何使用c#??

获取.dbf文件中的数据

我想要做的是读取每行(同一列)中的数据以进一步处理它们。

感谢。

2 个答案:

答案 0 :(得分:18)

您可以创建connection string to dbf file,然后使用OleDb,您可以填充数据集,例如:

string constr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=directoryPath;Extended Properties=dBASE IV;User ID=Admin;Password=;";
using (OleDbConnection con = new OleDbConnection(constr))
            {
                var sql = "select * from " + fileName;
                OleDbCommand cmd = new OleDbCommand(sql, con);
                con.Open();
                DataSet ds = new DataSet(); ;
                OleDbDataAdapter da = new OleDbDataAdapter(cmd);
                da.Fill(ds);
            }

稍后您可以使用ds.Tables[0]进行进一步处理。

您还可以查看此文章Load a DBF into a DataTable

答案 1 :(得分:0)

我发现接受的答案对我不起作用,因为我正在使用的.dbf文件嵌套在目录层次结构中,该目录层次结构使路径相当长,这可悲地导致{{1} }要抛出的对象。

我发现a neat little library仅需要一个文件路径即可工作。这是从GitHub页面上的示例改编而成的一个小示例:

OleDbCommand