c# 读取excel文件

2025-04-08 21:13:48
推荐回答(1个)
回答1:


我刚好在做这个·  不同版本的获取方法都有·  你看看~`


DataSet ds = new DataSet();
            OleDbConnection conn = new OleDbConnection();
            try
            {
                string sql = "Provider=Microsoft.Ace.OleDb.12.0;Data Source=" + path + ";Extended Properties=\"Excel 12.0;HDR=No;IMEX=1;\"";//2007版
                //string sql = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+path+";Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1;\"";//2003版
                //HDR=Yes/NO 表示是否将首行做标题,若设了YES 数据集中自动忽略了第一行。 IMEX 表示是否强制转换为文本
                conn.ConnectionString = sql;
                conn.Open();
                DataTable dt = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
                //string tableName = dt.Rows[0][2].ToString().Trim();//获得第一张工作区间表名
                //OleDbCommand cmd = new OleDbCommand("select * from  [" + tableName + "]", conn);//工作表名就是Excel显示区下面的工作区名
                OleDbCommand cmd = new OleDbCommand("select * from [Sheet1$]", conn);
                OleDbDataAdapter da = new OleDbDataAdapter(cmd);    //读取Excel表格             
                da.Fill(ds);
            }