欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

C# 取Excel Sheet列表

程序员文章站 2022-07-13 15:17:41
...

C# 取Excel Sheet列表

List<SheetName> GetSheetNames(OleDbConnection conn)
{
    List<SheetName> sheetNames = new List<SheetName>();
    if (conn.State != ConnectionState.Open)
    {
        conn.Open();
    }
    DataTable excelSchema = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
    foreach (DataRow row in excelSchema.Rows)
    {
        if (!row["TABLE_NAME"].ToString().Contains("FilterDatabase"))//排除FilterDatabase :如果有做筛选会产生隐藏的表
        {
            sheetNames.Add(new SheetName() { sheetName = row["TABLE_NAME"].ToString(), sheetType = row["TABLE_TYPE"].ToString(), sheetCatalog = row["TABLE_CATALOG"].ToString(), sheetSchema = row["TABLE_SCHEMA"].ToString() });
        }
    }
    //conn.Close();
    return sheetNames;
}
class SheetName
{
    public string sheetName { get; set; }
    public string sheetType { get; set; }
    public string sheetCatalog { get; set; }
    public string sheetSchema { get; set; }
}
相关标签: c# excel Sheet