内容简介:一直以来都是使用 NPOI 类库来读取或生成 Excel 文件,但总是感觉使用起来不够直观。偶然的机会发现 ClosedXML 类库读取和生成 Excel 语法很直观,非常容易上手。索性先整理一篇使用 ClosedXML 读取和生成 Excel 的文章,只包含最简单的使用语法。ClosedXML 是基于 OpenXML API 封装的 .NET 类库,支持传统的 .Net Framwork 和最新的 .Net Core。官网网站:需要注意的是:ClosedXML 只支持操作 Excel 2007+ 以上的版
1. 概述
一直以来都是使用 NPOI 类库来读取或生成 Excel 文件,但总是感觉使用起来不够直观。偶然的机会发现 ClosedXML 类库读取和生成 Excel 语法很直观,非常容易上手。索性先整理一篇使用 ClosedXML 读取和生成 Excel 的文章,只包含最简单的使用语法。
ClosedXML 是基于 OpenXML API 封装的 .NET 类库,支持传统的 .Net Framwork 和最新的 .Net Core。官网网站: https://github.com/ClosedXML/ClosedXML
需要注意的是:ClosedXML 只支持操作 Excel 2007+ 以上的版本,也就是扩展名对应 .xlsx、.xlsm 的文件。
可以通过 NuGet 直接安装 ClosedXML,也可使用命令行安装:
PM> Install-Package ClosedXML
2. Excel 生成
生成一个简单的 Excel 文件:
using (var workbook = new XLWorkbook()) { var worksheet = workbook.Worksheets.Add("示例工作表"); worksheet.Cell("A1").Value = "Hello World!"; worksheet.Cell("A2").FormulaA1 = "=MID(A1, 7, 5)"; workbook.SaveAs("测试文件.xlsx"); } Console.WriteLine("Excel创建完成");
效果:
3. Excel 读取
循环读取简单的 Excel 文件:
Dictionary<Tuple<int, int>, object> data = new Dictionary<Tuple<int, int>, object>(); using (XLWorkbook wb = new XLWorkbook("测试文件.xlsx"))//FilePath { var ws = wb.Worksheets.First(); var range = ws.RangeUsed(); for (int i = 1; i < range.RowCount() + 1; i++) { for (int j = 1; j < range.ColumnCount() + 1; j++) { data.Add(new Tuple<int, int>(i, j), ws.Cell(i, j).Value); } } }
4. 参考文章
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
The Art of Computer Programming, Volumes 1-3 Boxed Set
Donald E. Knuth / Addison-Wesley Professional / 1998-10-15 / USD 199.99
This multivolume work is widely recognized as the definitive description of classical computer science. The first three volumes have for decades been an invaluable resource in programming theory and p......一起来看看 《The Art of Computer Programming, Volumes 1-3 Boxed Set》 这本书的介绍吧!