可以使用EPPlus库来在C#中创建和写入Excel文件。首先,您需要在项目中安装EPPlus库。
在Visual Studio中,右键单击项目,选择“管理NuGet程序包”。在NuGet程序包管理器中,搜索EPPlus并安装它。
接下来,可以按照以下代码示例执行操作:
using OfficeOpenXml;
using System;
using System.Data;
using System.IO;
class Program
{
static void Main()
{
// 创建DataTable并添加数据
DataTable dataTable = new DataTable("Sheet1");
dataTable.Columns.Add("Name", typeof(string));
dataTable.Columns.Add("Age", typeof(int));
dataTable.Rows.Add("John Doe", 30);
dataTable.Rows.Add("Jane Smith", 25);
// 创建Excel文件(..\bin\Debug\net6.0\example.xlsx)
string filePath = "example.xlsx";
ExcelPackage.LicenseContext = LicenseContext.NonCommercial;
using (var package = new ExcelPackage(new FileInfo(filePath)))
{
var worksheet = package.Workbook.Worksheets.Add("Sheet1");
// 将DataTable数据写入工作表
worksheet.Cells["A1"].LoadFromDataTable(dataTable, true);
package.Save();
}
Console.WriteLine("Excel文件已创建并数据已写入!");
}
}
这段代码创建了一个名为"example.xlsx"的Excel文件,并将DataTable中的数据写入到工作表中。您可以根据需要修改文件路径和工作表名称。
请注意,此代码示例使用了`OfficeOpenXml`命名空间,该命名空间是EPPlus库的一部分。
用EPPLUS导出Excel时出现了如下问题:
OfficeOpenXml.LicenseException:“Please set the ExcelPackage.LicenseContext property. See https://epplussoftware.com/developers/licenseexception”
解决方案(添加下面一句代码 示例代码已添加过):
ExcelPackage.LicenseContext = LicenseContext.NonCommercial;