下载安装OfficeOpenXml模块
2代码
using System;
using System.IO;
using System.Data;
using OfficeOpenXml;
//
public class Excel_Ex
{
/// <summary>
/// ExcelPackage 保存为Excel文件
/// </summary>
public static void Test1()
{
ExcelPackage.LicenseContext = OfficeOpenXml.LicenseContext.NonCommercial;
using (FileStream fileStream = new FileStream("D://a.xlsx", FileMode.Create))
using (ExcelPackage package = new ExcelPackage(fileStream))
{
var sheet = package.Workbook.Worksheets.Add("木屋");//添加一个sheet
var cells = sheet.Cells;
cells[1, 1].Value = "大大怪将军的小木屋";//给第一行第一列赋值
cells["A1:I1"].Style.Font.Bold = true; //指定区域设置字体加粗
cells["A1:I1"].Style.Font.Size = 18; //指定区域设置字体加粗
cells["A1:I1"].Merge = true;//将A列1行和I列1行的单元格合并
//列自适应宽度
sheet.Cells.AutoFitColumns();
//列文本水平居中显示
sheet.Cells.Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center;
package.Save();//保存
}
}
/// <summary>
/// DataTable 保存为Excel文件
/// </summary>
public static void Test2()
{
DataTable dt = new DataTable();//创建表
dt.Columns.Add("ID", typeof(Int32));//添加列
dt.Columns.Add("Name", typeof(String));
dt.Columns.Add("Age", typeof(Int32));
dt.Rows.Add(new object[] { 1, "张三", 20 });//添加行
dt.Rows.Add(new object[] { 2, "李四", 25 });
dt.Rows.Add(new object[] { 3, "王五", 30 });
ExcelPackage.LicenseContext = OfficeOpenXml.LicenseContext.NonCommercial;
using (FileStream fileStream = new FileStream("D://a2.xlsx", FileMode.Create))
using (ExcelPackage package = new ExcelPackage(fileStream))
{
var sheet = package.Workbook.Worksheets.Add("木屋");//添加一个sheet
sheet.Cells["A1"].LoadFromDataTable(dt, true);
package.Save();//保存
}
}
}