C#读取Excel表格的方法

来源:互联网 发布:学生背包品牌知乎 编辑:程序博客网 时间:2024/06/05 17:25

最近学校给了一个学生表格让我导入数据库,上千行数据,不能直接复制到数据库,所以就研究了以下C#读取到EXCEL表格中的数据后怎样添加到数据库,这里总结一下。。有不对之处还望指出。

首先需要添加一个命名空间

using System.Data.OleDb;
然后是数据库连接字符串:

string StrConn = "Provider=Microsoft.Ace.OleDb.12.0;" + "Data Source=" + path + ";Extended Properties='Excel 12.0; HDR=NO; IMEX=1'";
(可以兼容03版本的Excel文件,这里的path是你打开的Excel文件所在的路径)


然后就是数据库连接了:

OleDbConnection conn=new OleDbConnection(StrConn); //其实同sql的SqlConnection差不多
数据库连接建立好了之后就可以访问excel表格了:

OleDbDataAdapter myCommand = new OleDbDataAdapter("select * from [Student$]", conn);//"[]"里面为表名,必须加"$"符号

此刻myCommand中就保存的是Student这个表中的数据


可以填充数据集:

DataSet ds = new DataSet();myCommand.Fill(ds);//填充数据集这个数据集中只有一个表

注意:是从A1:1这个单元格开始访问的 不能用列名读取数据


读取数据:

DataTable dt = ds.Table[0]//把数据集中的第一个表赋值给它
 foreach (DataRow row in dt.Rows)//使用foreach遍历这个表中的所有行 {   row[0];//某行的0列  row[1]某行的1列 }


注意:如果说你的C#报错说你的电脑没有安装什么12.0的引擎那么需要下载http://www.microsoft.com/zh-cn/download/details.aspx?id=23734 



原创粉丝点击