阅读量:0
在C#中高效操作Excel文件,推荐使用EPPlus库,它是一个开源的.NET库,可以处理Excel 2007/2010/2013/2016文件。以下是使用EPPlus库高效操作Excel文件的一些建议:
安装EPPlus库:通过NuGet包管理器安装EPPlus库。在Visual Studio中,右键单击项目,选择“管理NuGet程序包”,然后搜索并安装EPPlus。
读取Excel文件:使用EPPlus库读取Excel文件非常简单。以下是一个示例代码:
using OfficeOpenXml; using System; namespace ExcelReader { class Program { static void Main(string[] args) { using (var package = new ExcelPackage()) { package.Load("example.xlsx"); var worksheet = package.Workbook.Worksheets["Sheet1"]; foreach (var row in worksheet.Rows) { foreach (var cell in row) { Console.Write(cell.Value + "\t"); } Console.WriteLine(); } } } } }
- 写入Excel文件:使用EPPlus库将数据写入Excel文件也很简单。以下是一个示例代码:
using OfficeOpenXml; using System; namespace ExcelWriter { class Program { static void Main(string[] args) { using (var package = new ExcelPackage()) { var worksheet = package.Workbook.Worksheets.Add("Sheet1"); // 设置表头 worksheet.Cells["A1"].Value = "Name"; worksheet.Cells["B1"].Value = "Age"; worksheet.Cells["C1"].Value = "City"; // 写入数据 worksheet.Cells["A2"].Value = "Alice"; worksheet.Cells["B2"].Value = 30; worksheet.Cells["C2"].Value = "New York"; // 保存文件 package.Save("output.xlsx"); } } } }
- 使用命名范围:EPPlus支持使用命名范围来引用Excel单元格。这可以提高代码的可读性和可维护性。以下是一个示例代码:
using OfficeOpenXml; using System; namespace NamedRangeExample { class Program { static void Main(string[] args) { using (var package = new ExcelPackage()) { var worksheet = package.Workbook.Worksheets["Sheet1"]; // 定义命名范围 worksheet.Names.Add("NamedRange", "A1:C10"); // 使用命名范围引用单元格 var namedRange = worksheet.Names["NamedRange"]; Console.WriteLine(namedRange.RefersTo); } } } }
- 使用公式:EPPlus支持计算Excel公式。以下是一个示例代码:
using OfficeOpenXml; using System; namespace ExcelFormulaExample { class Program { static void Main(string[] args) { using (var package = new ExcelPackage()) { var worksheet = package.Workbook.Worksheets["Sheet1"]; // 设置公式 worksheet.Cells["A1"].Value = "=SUM(B2:B10)"; // 计算公式结果 var result = worksheet.Cells["A1"].Value; Console.WriteLine("Sum of B2:B10: " + result); } } } }
通过使用EPPlus库,您可以在C#中高效地操作Excel文件。