用C#读取Excel文件 – select表单

我正在阅读与C#和OleDB(12.0)的Excel文件。 在那里,我必须用我希望阅读的工作表的名字来指定select语句( [Sheet1$] )。

 this.dataAdapter = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", connectionString); 

是否可以select第一张纸,不pipe是什么名字?

谢谢。

看到这个答案就如何获取表名单的顺序: 使用Excel的OleDb获取工作表名称在页顺序

这是我的版本,这是短一点:

 public static IEnumerable<string> GetExcelSheetNames(string excelFile) { var connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + excelFile + ";Extended Properties=Excel 8.0;"; using (var connection = new OleDbConnection(connectionString)) { connection.Open(); using (var dt = connection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null)) { return (dt ?? new DataTable()) .Rows .Cast<DataRow>() .Select(row => row["TABLE_NAME"].ToString()); } } }