04
2012
06

C# 中Excel的2003和2007版本读取第一个表的数据并存入到DataSet中

        private DataSet GetSetInfo(string type, string Path)
        {
            string SqlString = "";
            if (type == ".xls")//导入格式
            {
                SqlString = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'", Path);          //2003版本Excel
            }
            else
            {
                SqlString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'", Path);         //2007版本Excel
            }

            try
            {
                OleDbConnection cnnxls = new OleDbConnection(SqlString);        //开始读取

                OleDbDataAdapter myDa = null;
                myDa = new OleDbDataAdapter("select * from [Sheet1$]", cnnxls);     //读取表名为Sheet1
                DataSet ds = new DataSet();
                myDa.Fill(ds, "TableInfo");    //将读取到的表数据添加到DataSet中
                return ds;
            }
            catch
            {
                MessageBox.Show("操作错误!");
                return null;
            }
        }

« 上一篇下一篇 »

评论列表:

1.www.aaab2b.com  2012/6/5 0:01:58 回复该留言
精辟!写得很有见解,大家所见略同啊!
这个里面也能插入的啊

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。