01 |
.NET 读取Excel 2007的xlsx文件和读取老的.xls文件是一样的,都是用Oledb读取,仅仅连接字符串不同而已。 |
02 |
读取xlsx 用的是Microsoft.Ace.OleDb.12.0; |
04 |
public static DataTable GetExcelToDataTableBySheet( string FileFullPath, string SheetName) |
07 |
string strConn = "Provider=Microsoft.Ace.OleDb.12.0;" + "data source=" + FileFullPath + ";Extended Properties='Excel 12.0; HDR=NO; IMEX=1'" ; |
08 |
OleDbConnection conn = new OleDbConnection(strConn); |
10 |
DataSet ds = new DataSet(); |
11 |
OleDbDataAdapter odda = new OleDbDataAdapter( string .Format( "SELECT * FROM [{0}]" , SheetName), conn); |
12 |
odda.Fill(ds, SheetName); |
19 |
读取Excel文件时,可能一个文件中会有多个Sheet,因此获取Sheet的名称是非常有用的。 |
25 |
public static String[] GetExcelSheetNames( string excelFile) |
27 |
OleDbConnection objConn = null ; |
28 |
System.Data.DataTable dt = null ; |
34 |
string strConn = "Provider=Microsoft.Ace.OleDb.12.0;" + "data source=" + excelFile + ";Extended Properties='Excel 12.0; HDR=NO; IMEX=1'" ; |
35 |
objConn = new OleDbConnection(strConn); |
37 |
dt = objConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null ); |
42 |
String[] excelSheets = new String[dt.Rows.Count]; |
44 |
foreach (DataRow row in dt.Rows) |
46 |
excelSheets[i] = row[ "TABLE_NAME" ].ToString(); |
非常简单就可以读取到文件内容了,.NET就是强大。
命名空间:using System.IO;
返回路径:StreamReader sr = new StreamReader(@"路径", System.Text.Encoding.GetEncoding("GB18030")); //[设置中文编码]
读取文件:textBox1.Text = sr.ReadToEnd();
关闭流:sr.Close();
另://HDR=Yes; 第一行是否是标题。 IMEX=1; 处理空行问题
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
2009-06-05 C#中Request.ServerVariables详细说明及代理
2009-06-05 Request.Params["ID"](小结)
2007-06-05 Html标签中的Alt和Html