Excel数据处理利器:C#中三款热门开源类库推荐及实例代码解析

开发 前端
这些类库都提供了丰富的功能,你可以根据项目的需求选择合适的类库。以上示例代码中的注释是为了说明基本功能,实际应用中你可能需要根据业务需求进行更复杂的操作。

在C#中有一些优秀的开源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);
}

这些类库都提供了丰富的功能,你可以根据项目的需求选择合适的类库。以上示例代码中的注释是为了说明基本功能,实际应用中你可能需要根据业务需求进行更复杂的操作。

责任编辑:姜华 来源: 今日头条
相关推荐

2024-07-08 11:58:19

2009-09-01 13:59:01

C#操作Excel

2009-08-28 15:37:22

C#线程类的定义

2009-08-07 15:38:15

精通C#数据库编程

2023-02-07 12:27:15

2009-08-26 14:03:26

C#打印原理

2009-08-18 13:49:21

C# 操作Excel

2024-10-31 10:18:43

C#ORM框架

2009-09-01 14:08:58

C#操作Excel

2024-02-26 13:47:00

C#Socket数据接收

2009-08-31 10:18:00

C#静态变量定义C#静态变量

2009-09-09 14:40:15

C# XML解析

2009-08-18 15:31:07

C# 操作Excel

2016-04-29 10:02:39

2021-12-29 10:51:19

JavaSPL架构

2009-08-19 16:09:15

C#操作Access

2009-08-26 12:14:44

C#打印设置

2009-08-31 18:17:32

C#接口编程

2009-09-07 06:31:32

C#窗体移动

2009-08-18 16:04:12

C# 操作Excel
点赞
收藏

51CTO技术栈公众号