public DataTable Read_dBase_File(string fullFilename)
{
// Read file
var dbf = new Dbf();
dbf.Read(fullFilename);
// DataTable
var dt = new DataTable();
// Cols
for (int i = 0; i < dbf.Fields.Count; i++)
{
dt.Columns.Add(dbf.Fields[i].Name, dbf.Fields[i].GetType().GetProperties()[0].PropertyType);
}
// Rows
foreach (DbfRecord record in dbf.Records)
{
var row = dt.NewRow();
for (int i = 0; i < dt.Columns.Count; i++) row[i] = record.Data[i];
dt.Rows.Add(row);
}
// Clean
dbf = null;
// Return
return dt;
}