Problem mit der OleDbDataAdapter-Objekt zum abrufen von Daten aus einem Excel-Blatt

Erste, ich möchte sagen, dass ich bin auf tiefem Wasser hier, da bin ich gerade dabei einige änderungen an code, die geschrieben werden von jemand anderem in der Firma, mit OleDbDataAdapter zu "sprechen", um Excel -, und ich bin nicht vertraut mit dieser. Gibt es einen Fehler gibt, kann ich einfach nicht Folgen.

Ich versuche, einen OleDbDataAdapter zu Lesen, in eine excel-Datei mit etwa 450 Zeilen.

In den code das so gemacht:

connection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source='" + path + "';" + "Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1;\"");
connection.Open();
OleDbDataAdapter objAdapter = new OleDbDataAdapter(objCommand.CommandText, connection);
objAdapter.Fill(objDataSet, "Excel");

foreach (DataColumn dataColumn in objTable.Columns) {
  if (dataColumn.Ordinal > objDataSet.Tables[0].Columns.Count - 1) {
    objDataSet.Tables[0].Columns.Add();
  }
  objDataSet.Tables[0].Columns[dataColumn.Ordinal].ColumnName = dataColumn.ColumnName;
  objImport.Columns.Add(dataColumn.ColumnName);
}

foreach (DataRow dataRow in objDataSet.Tables[0].Rows) {
   ...
}

Alles scheint zu funktionieren gut, außer für eine Sache. Die zweite Spalte ist gefüllt mit meist vierstelligen Nummern, wie 6739, 3920 und so, aber fice Zeilen alphanumerische Werte wie 8201NO und 8205NO. Die fünf Zellen sind gemeldet, dass blanko-Inhaltsverzeichnis, anstatt Ihre alphanumerische Inhalte. Ich habe in excel alle Zellen in dieser Spalte markiert sind, als Text.

Dies ist eine xls-Datei, die durch die Art und Weise, und nicht xlsx.

Tun haben jedermann keine Ahnung, warum diese Zellen sind dargestellt als Lücke in der DataRow, aber die numerischen sind gezeigt in Ordnung? Es gibt andere Spalten mit alphanumerischen Inhalten, die gezeigt werden just fine.

Vielen Dank an alle für das helfen mich mit diesem Thema. Sie gab mir zu verstehen, warum dies geschah, so konnte ich finden die richtige Lösung. Ich denke immer noch, wie es funktioniert, ist ganz schrecklich, aber das ist eine andere Geschichte 🙂

InformationsquelleAutor | 2010-09-28

Schreibe einen Kommentar