0
我用OleDb導入有2000列的Excel文件。所以通過使用這段代碼,我可以在我的DataTable中只有255列。我想要一些其他方式,或者如果可能的話,這樣可以讓我的DataTable獲得2000列。導入有2000列的Excel
DataTable dtExcelRecords = new DataTable();
using (OleDbConnection con = new OleDbConnection(connectionString))
{
con.Open();
DataTable dtSheet = con.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
List<string> listSheet = new List<string>();
foreach (DataRow drSheet in dtSheet.Rows)
{
if (drSheet["TABLE_NAME"].ToString().Contains("$"))
{
listSheet.Add(drSheet["TABLE_NAME"].ToString());
}
}
string workSheetName = listSheet.FirstOrDefault(x => x.Contains(cCommon.sFDDetailsWorkSheetName));
OleDbCommand cmd = new OleDbCommand(string.Format("SELECT * FROM [{0}]", workSheetName.Trim()), con);
cmd.CommandType = System.Data.CommandType.Text;
OleDbDataAdapter dAdapter = new OleDbDataAdapter(cmd);
dAdapter.SelectCommand = cmd;
dAdapter.Fill(dtExcelRecords);
}
而不是數據表嘗試使用XML。 –
如何在不使用DataTable的情況下將excel文件轉換爲xml對象@PareshJ – arvind
您需要添加循環才能獲取每一列及其數據。我知道它漫長的過程,但肯定會奏效。 –