2012-07-06 16 views

Odpowiedz

15

może utworzyć connection string to dbf file, następnie przy użyciu OleDb można wypełnić zestaw danych, coś jak:

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); 
      } 

Później można użyć ds.Tables[0] do dalszego przetwarzania.

Można również sprawdzić ten artykuł Load a DBF into a DataTable

+0

Wielkie dzięki. Mogę zrobić to, co chciałem teraz! – user1484319

+2

Powinieneś użyć 'directoryPath' zamiast' yourfilepath', aby uniknąć wprowadzania w błąd ... lub użyć konkretnego przykładu, takiego jak: 'c: \ folder' – Jaider

+0

czy można uzyskać konkretne dane wiersza? tak, jakbym przekazał indeks wiersza i powinienem otrzymać te konkretne dane wiersza –