.Net读取xlsx文件Excel2007
来源:互联网 发布:瞻博网络中国裁员 编辑:程序博客网 时间:2024/05/16 08:59
.NET 读取Excel 2007的xlsx文件和读取老的.xls文件是一样的,都是用Oledb读取,仅仅连接字符串不同而已。读取xlsx 用的是Microsoft.Ace.OleDb.12.0;具体操作方法如下:public static DataTable GetExcelToDataTableBySheet(string FileFullPath, string SheetName){ //string strConn = "Provider=Microsoft.Jet.OleDb.4.0;" + "data source=" + FileFullPath + ";Extended Properties='Excel 8.0; HDR=NO; IMEX=1'"; //此连接只能操作Excel2007之前(.xls)文件 string strConn = "Provider=Microsoft.Ace.OleDb.12.0;" + "data source=" + FileFullPath + ";Extended Properties='Excel 12.0; HDR=NO; IMEX=1'"; //此连接可以操作.xls与.xlsx文件 OleDbConnection conn = new OleDbConnection(strConn); conn.Open(); DataSet ds = new DataSet(); OleDbDataAdapter odda = new OleDbDataAdapter(string.Format("SELECT * FROM [{0}]", SheetName), conn); //("select * from [Sheet1$]", conn); odda.Fill(ds, SheetName); conn.Close(); return ds.Tables[0];} 读取Excel文件时,可能一个文件中会有多个Sheet,因此获取Sheet的名称是非常有用的。具体操作方法如下://根据Excel物理路径获取Excel文件中所有表名public static String[] GetExcelSheetNames(string excelFile){ OleDbConnection objConn = null; System.Data.DataTable dt = null; try { //string strConn = "Provider=Microsoft.Jet.OleDb.4.0;" + "data source=" + excelFile + ";Extended Properties='Excel 8.0; HDR=NO; IMEX=1'"; //此连接只能操作Excel2007之前(.xls)文件 string strConn = "Provider=Microsoft.Ace.OleDb.12.0;" + "data source=" + excelFile + ";Extended Properties='Excel 12.0; HDR=NO; IMEX=1'"; //此连接可以操作.xls与.xlsx文件 objConn = new OleDbConnection(strConn); objConn.Open(); dt = objConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null); if (dt == null) { return null; } String[] excelSheets = new String[dt.Rows.Count]; int i = 0; foreach (DataRow row in dt.Rows) { excelSheets[i] = row["TABLE_NAME"].ToString(); i++; } return excelSheets; } catch { return null; } finally { if (objConn != null) { objConn.Close(); objConn.Dispose(); } if (dt != null) { dt.Dispose(); } }}非常简单就可以读取到文件内容了,.NET就是强大。
命名空间:using System.IO;
返回路径:StreamReader sr = new StreamReader(@"路径", System.Text.Encoding.GetEncoding("GB18030")); //[设置中文编码]
读取文件:textBox1.Text = sr.ReadToEnd();
关闭流:sr.Close();
阅读全文
0 0
- .Net读取xlsx文件Excel2007
- .Net读取xlsx文件Excel2007
- 解析xlsx文件---Java读取Excel2007
- .Net读取xlsx文件
- .Net读取xlsx文件 excel文件
- C# 讀取Excel、xlsx文件Excel2007
- asp.net 读取Excel2007
- asp.net读取xlsx
- phpExcel读取xlsx文件
- python读取xlsx文件
- 读取xlsx文件
- NPOI 1.2.4 是否可以读取 excel2007的xlsx格式文件
- JavaEE POI读取 Excel中的数据,(Excel2003(xls), Excel2007(xlsx))
- poi3.16读取xlsx excel2007+的官方例子
- .Net读取Excel(包括Excel2007)
- C#读取Excel2007的文件
- poi读取excel2007大文件
- C#读取Excel2007的文件
- 存储结构的定义及其分类
- ASP.NET页面输出XML(C#)
- .NET 在线生成XML文档,并提供下载
- 多进程爬虫
- 专注于windows系统安全 与 asp.net开发
- .Net读取xlsx文件Excel2007
- 【LeetCode】48. Rotate Image
- HBase1.2.0 windows单机版安装配置
- CodeForces
- 观察者模式--众多通知,一步到位(行为模式06)
- 纯CSS美化表格单元格背景效果,效果很帅
- UBUNTU系统镜像定制
- 二叉树的非递归遍历方法
- 调试svo 中遇到的问题