3
經過一番谷歌搜索後,我發現如何讀取excel列名How To Retrieve Schema Information by Using GetOleDbSchemaTable and Visual Basic .NET 。雖然示例在VB.Net中,但我使用的是C#.net。 我的代碼是:使用GetOleDbSchemaTable讀取excel列名的問題
public DataSet ReadXslToDataset(string fileName,string sheetName)
{
ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+fileName+";Extended Properties='Excel 8.0;HDR=YES;IMEX=1'";
using (objConn = new OleDbConnection(ConnectionString))
{
objConn.Open();
String[] restrection = { null, null, sheetName, null };
dtColumnNames = objConn.GetOleDbSchemaTable (OleDbSchemaGuid.Columns, restrection);
string strColumnName = string.Empty;
if (dtColumnNames != null)
strColumnName = dtColumnNames.Rows[0]["COLUMN_NAME"].ToString();
}
}
但我發現,列字段爲空,並從此獲得異常
有在位置沒有行0
Excel文件看起來
S.No Issue
1 log4net message pattern not displayed properly in the log file
2 Reading blank rows from Excel while populating into dataset
我確保我通過正確的文件&表名。