在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();
}
}
}
}
}
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");
}
}
}
}
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);
}
}
}
}
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文件。