通过 C# 写入数据到Excel表格
要在C#中将数据写入Excel表格,可以使用Microsoft Office的Interop服务或第三方库如EPPlus或ClosedXML。以下是使用Interop服务的一个简单示例:
首先,确保已经在项目中添加了对Microsoft Excel Object Library的引用。在Visual Studio中,可以通过“添加” -> “引用” -> “COM”选项卡来完成。
然后,使用以下代码将数据写入Excel文件:
using System;
using Excel = Microsoft.Office.Interop.Excel;
namespace ExcelWriteDemo
{
class Program
{
static void Main(string[] args)
{
// 创建Excel应用程序实例
Excel.Application xlApp = new Excel.Application();
// 创建新的工作簿
Excel.Workbook xlWorkbook = xlApp.Workbooks.Add();
// 获取第一个工作表
Excel._Worksheet xlWorksheet = xlWorkbook.Sheets[1];
// 设置Excel不可见(后台运行)
xlApp.Visible = false;
// 写入数据到工作表的单元格
xlWorksheet.Cells[1, 1] = "Column1";
xlWorksheet.Cells[1, 2] = "Column2";
xlWorksheet.Cells[2, 1] = "Data1";
xlWorksheet.Cells[2, 2] = "Data2";
// 保存工作簿
xlWorkbook.SaveAs("C:\\path\\to\\your\\ExcelFile.xlsx");
// 关闭工作簿和应用程序
xlWorkbook.Close();
xlApp.Quit();
// 释放对象内存
System.Runtime.InteropServices.Marshal.ReleaseComObject(xlWorksheet);
System.Runtime.InteropServices.Marshal.ReleaseComObject(xlWorkbook);
System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApp);
Console.WriteLine("Excel file created successfully!");
}
}
}
请注意,使用Interop服务需要安装Microsoft Office。另外,由于使用了COM互操作性,这种方法可能会引起安全问题,并且在不同的客户端计算机上可能需要不同的配置。
使用第三方库如EPPlus会更加现代和灵活,并且通常不需要在客户端机器上安装Microsoft Office。以下是使用EPPlus的示例:
首先,通过NuGet安装EPPlus库。
然后,使用以下代码将数据写入Excel文件:
using OfficeOpenXml;
using System.IO;
namespace EPPlusWriteDemo
{
class Program
{
static void Main(string[] args)
{
// 创建Excel包
ExcelPackage.LicenseContext = LicenseContext.NonCommercial; // 设置许可
using (var package = new ExcelPackage())
{
// 添加一个工作表
var worksheet = package.Workbook.Worksheets.Add("Sheet1");
// 写入数据到工作表的单元格
worksheet.Cells[1, 1].Value = "Column1";
worksheet.Cells[1, 2
评论已关闭