ExcelHelper-Excel 读取/写入帮助类

ExcelHelper 是一个 Excel 读写操作的类,在 NPOI 的基础上进一步封装,使 C# 操作 Excel 的读写更加简单方便,Excel 中包含公式/单元格也可以轻松读取,也可以读取/写入多表单数据。

项目地址:

https://gitee.com/snipen/Helper.Core.Library/blob/master/ExcelHelper.cs

数据实体模型如下:

public class UserModel
{
    public int UserID { get; set; }
    public string UserName { get; set; }
    public string UserGender { get; set; }
    public string UserEmail { get; set; }
}

读取 Excel 数据代码如下:

ExcelHelper.ToEntityList<UserModel>("C:\\1.xlsx", "Sheet1", new
{
    UserID = "编号",
    UserName = "姓名",
    UserGender = "性别",
    UserEmail = "邮箱"
});

写入 Excel 数据代码如下:

List<UserModel> dataList = new List<UserModel>() { };
ExcelHelper.ToExcel<UserModel>(dataList, "C:\\1.xlsx", "Sheet1", new
{
    UserID = "编号",
    UserName = "姓名",
    UserGender = "性别",
    UserEmail = "邮箱"
});

按模板文件生成 Excel 文件

List<UserModel> dataList = new List<UserModel>() { };
ExcelHelper.ToTemplateExcel<UserModel>("C:\\template.xlsx", "Sheet1", "C:\\1.xlsx", new
{
    //以 $ 前缀:通过匿名类型替换数据
    //以 # 前缀:通过实体属性值替换数据
    //以 &= 前缀:公式计算
    //以 i 后缀:行数,会根据行索引进行替换
    //以 _dataBegin 后缀:数据行开始,计算过程中会替换
    //以 _dataEnd 后缀:数据行结束,计算过程中会替换
}, dataList);

生成带有合并单元格的 Excel 文件

List<UserModel> dataList = new List<UserModel>() { };
ExcelHelper.ToExcel<UserModel>(dataList, "C:\\1.xlsx", "Sheet1", new
{
    UserID = "编号",
    UserName = "姓名",
    UserGender = "性别",
    UserEmail = "邮箱"
}, null, true, null, (NPOI.SS.UserModel.ISheet iSheet, Dictionary<string, int> headerNameDict) =>
{
    // 处理合并单元格
}, true, null);

管理员

转载请注明出处!如果本博文或者本站对您(网站)的内容/素材构成侵权,请第一时间与本博主联系!

Press ESC to close