美文网首页
C#读取Excel数据

C#读取Excel数据

作者: INSO8 | 来源:发表于2018-08-26 15:38 被阅读0次
          openFileDialog1.InitialDirectory = @"e:\学生会资料";//默认目录
           //筛选文件类型  1.分别筛选多种文件类型格式:文件类型名字|*.扩展名|文件类型名名字|*.扩展名 2.一次筛选多种文件类型格式:文件类型名字|*.扩展名; *.扩展名
          openFileDialog1.Filter = "Excel文件|*.xls;*.xlsx";
          openFileDialog1.Title = "浏览";//显示在对话框标题栏中的字符 
          openFileDialog1.RestoreDirectory = true;//是否恢复当前目录,不常用
          if (openFileDialog1.ShowDialog() == DialogResult.OK)//判断是否点了确定按钮
            {
              string Route = openFileDialog1.FileName;//获取文件绝对路径
              string fileExt=Path.GetExtension(Route);//获取文件后缀名
              string str = null;
              str = TabelName(Route);//获取第一个表名,此方法是自己编写的
              if (fileExt==".xls")//判断文件后缀名,设置相应的连接字符串
                 {
                    //HDR=NO 表示表中无字段,就会自动生成F1,F2.....
                    //HDR=yes 即有字段,即将第一行设为字段,默认值为YES
                    str = "Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source =" + Route + ";Extended Properties='Excel 8.0;HDR=YES;IMEX=0'";
                  }
                    //以.xlsx为后缀,应该将Jet改为Ace,4.0改为12.0,  8.0改为12.0.
               else if (fileExt==".xlsx")
                   {
                      str = "Provider = Microsoft.ACE.OLEDB.12.0 ; Data Source =" + Route + ";Extended Properties='Excel 12.0;HDR=YES;IMEX=0'";
                    }
                DataSet ds=new DataSet();//用于存放数据
                OleDbConnection con=new OleDbConnection(str);//创建连接对象
                con.Open();//打开连接
                string sql = "select * from ["+str+"]";//SQL语句
                OleDbDataAdapter da=new OleDbDataAdapter(sql,con);//数据适配器
                con.Close();//关闭连接
                da.Fill(ds);//将查询出的结果填充到DataSet中
                dataGridView1.DataSource = ds.Tables[0];//绑定数据源
                    }
    

    相关文章

      网友评论

          本文标题:C#读取Excel数据

          本文链接:https://www.haomeiwen.com/subject/pbeoiftx.html