Excel数据处理利器:C#中三款热门开源类库推荐及实例代码解析
创作时间:
作者:
@小白创作中心
Excel数据处理利器:C#中三款热门开源类库推荐及实例代码解析
引用
1
来源
1.
https://blog.sjtt.cc/details/170055240970715902
在C#开发中,处理Excel文件是一个常见的需求。本文将介绍三个热门的开源Excel处理类库:EPPlus、NPOI和ClosedXML。这些类库功能强大且易于使用,能够满足各种Excel文件处理需求。
EPPlus
- 功能:EPPlus是一个用于处理Excel文件的功能强大且易于使用的开源库。它支持Excel 2007及以上版本(.xlsx格式)。
- 适用范围:适用于创建、读取和编辑Excel文件,支持图表、样式、公式等高级功能。
- 下载地址:EPPlus GitHub
实例代码
using OfficeOpenXml;
// 数据导出到Excel
using (var package = new ExcelPackage())
{
var worksheet = package.Workbook.Worksheets.Add("Sheet1");
worksheet.Cells["A1"].Value = "Hello";
worksheet.Cells["A2"].Value = "World";
package.SaveAs(new FileInfo("output.xlsx"));
}
// 从Excel导入数据
using (var package = new ExcelPackage(new FileInfo("input.xlsx")))
{
var worksheet = package.Workbook.Worksheets[0];
var value1 = worksheet.Cells["A1"].Value.ToString();
var value2 = worksheet.Cells["A2"].Value.ToString();
Console.WriteLine(value1 + " " + value2);
}
NPOI
- 功能:NPOI是一个.NET实现的开源类库,支持Excel、Word和PowerPoint文件的读写。
- 适用范围:适用于处理多种Office文档格式,包括Excel。
- 下载地址:NPOI GitHub
实例代码
using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel;
using NPOI.HSSF.UserModel;
// 数据导出到Excel
IWorkbook workbook = new XSSFWorkbook(); // 或者 new HSSFWorkbook(),取决于Excel版本
ISheet sheet = workbook.CreateSheet("Sheet1");
sheet.CreateRow(0).CreateCell(0).SetCellValue("Hello");
sheet.CreateRow(1).CreateCell(0).SetCellValue("World");
using (var fs = new FileStream("output.xlsx", FileMode.Create, FileAccess.Write))
{
workbook.Write(fs);
}
// 从Excel导入数据
using (var fs = new FileStream("input.xlsx", FileMode.Open, FileAccess.Read))
{
IWorkbook workbook = WorkbookFactory.Create(fs);
ISheet sheet = workbook.GetSheetAt(0);
var value1 = sheet.GetRow(0).GetCell(0).ToString();
var value2 = sheet.GetRow(1).GetCell(0).ToString();
Console.WriteLine(value1 + " " + value2);
}
ClosedXML
- 功能:ClosedXML是一个简单的开源库,用于在.NET应用程序中创建和处理Excel文件。
- 适用范围:适用于创建、读取和编辑Excel文件,提供简洁的API。
- 下载地址:ClosedXML GitHub
实例代码
using ClosedXML.Excel;
// 数据导出到Excel
using (var workbook = new XLWorkbook())
{
var worksheet = workbook.Worksheets.Add("Sheet1");
worksheet.Cell("A1").Value = "Hello";
worksheet.Cell("A2").Value = "World";
workbook.SaveAs("output.xlsx");
}
// 从Excel导入数据
using (var workbook = new XLWorkbook("input.xlsx"))
{
var worksheet = workbook.Worksheet(1);
var value1 = worksheet.Cell("A1").Value.ToString();
var value2 = worksheet.Cell("A2").Value.ToString();
Console.WriteLine(value1 + " " + value2);
}
这些类库都提供了丰富的功能,你可以根据项目的需求选择合适的类库。以上示例代码中的注释是为了说明基本功能,实际应用中你可能需要根据业务需求进行更复杂的操作。
热门推荐
Latch up 闩锁效应原理介绍
一文搞懂闩锁效应(Latch up)
SEO优化中网站图片优化的技巧
Polo 衫才是春天最火搭配,这几种搭配,时髦炸了
骨折后如何申请工伤认定书?一文详解申请流程与所需材料
消防安全的法律法规和标准
【舌诊】中医教你通过舌头快速识别疾病
PCIe与Ethernet 在新能源车中的应用趋势
国产车与合资车质量差距到底有多大?资深修理工为你详细解析!
外出住酒店,手指验证双面镜靠谱吗?
肋骨断了需要做手术吗?专业医生这样回答
肠胃积热的症状以及吃什么药
肠胃积热的症状及用药建议
如何选择最适合你的DDR4内存?深度分析各大品牌特性、性能表现和市场售价
购房合同补充协议签订原则解析
男人的“战斗力”也需要培养,常做这3项运动,提升能力卓有成效
外出住酒店,手指验证双面镜靠谱吗?
起名字末尾字(名字末尾字取什么声调好)
动脉粥样硬化斑块切除术后需要多长时间才能恢复?
卵圆孔封堵术后注意事项
如何分析眼科检查报告?眼科检查报告的解读与注意事项
燕窝椰汁咖啡制作攻略:从选材到调味,全方位打造美味饮品
车转向灯不亮怎么回事?如何快速诊断并解决转向灯问题?
莲子哪个地方产的最好?
中科院研究发现:补充这种氨基酸可以延缓衰老
查骨密度?我来告诉你怎么查
探索分子世界的奥秘:探针法熔解曲线
刚吃完饭就想去大便,是怎么回事?可能是疾病降临的信号
做完根管治疗,你要知道的那些事
翡翠五行属性全解:探究翡翠的五行特性