如何获取excel对应的sheet个数和对应的名字

public static int GetExcelTableCount(string filename) { DataTable dt = new DataTable(); OleDbConnection cnnxls = new OleDbConnection(); try { string mystring = "Provider = Microsoft.Jet.OLEDB.4.0 ;Extended Properties=Excel 8.0;Data Source =" + filename; cnnxls.ConnectionString = mystring; cnnxls.Open(); dt = cnnxls.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null); return dt.Rows.Count; } finally { cnnxls.Close(); } return 0; } public static string[] GetExcelTableNames(string filename) { DataTable dt = new DataTable(); OleDbConnection cnnxls = new OleDbConnection(); try { string mystring = "Provider = Microsoft.Jet.OLEDB.4.0 ;Extended Properties=Excel 8.0;Data Source =" + filename; cnnxls.ConnectionString = mystring; cnnxls.Open(); dt = cnnxls.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null); } finally { cnnxls.Close(); } List names = new List(); foreach (DataRow row in dt.Rows) { names.Add(row["TABLE_NAME"].ToString().Trim('/'', '$').Replace("''", "'").Replace("$$", "$")); } return names.ToArray(); }
原文地址:https://www.cnblogs.com/liaomin416100569/p/9331502.html