C#EPPlus Excel导出类
C#的 Excel 导出类,用 EPPlus 来搞挺合适的。这个库不用你机器上装 Excel,轻便,部署也省心。你只要准备好数据列表,传路径和表名进去,方法一调用,Excel 文件就妥妥地生成出来了。代码也不复杂,反正就是通过反射把属性名当表头写上,再一行一行填数据,逻辑清爽。
数据报表的导出,经常遇到吧?尤其是后台系统,老板一句“导个 Excel 看看”,你总不能手工复制粘贴吧。用微软的 Microsoft.Office.Interop.Excel 也能搞,不过前提是服务器上得装 Excel,麻烦不说,兼容性也挺折腾。
换个思路,用 EPPlus 这类第三方库就省事多了。它直接操作 .xlsx
文件,底层是 Open XML 格式,轻巧又高效。核心类 ExcelPackage
用法也简单,一句 package.Workbook.Worksheets.Add(sheetName)
就能加工作表,接下来用反射你的数据模型,通用性也强。
看代码结构就知道,这个类是泛型的,你的数据实体只要是公共属性都能自动映射过去。比如:
List dataList = GetDataFromDatabase();
ExcelExporter exporter = new ExcelExporter();
exporter.ExportToExcel("output.xlsx", dataList, "Sheet1");
要注意一点,EPPlus 从 5.x 开始是商业授权(Polyform),但 4.5.3.3 版本还是 LGPL 的,用于内部工具足够了。如果你项目对开源协议敏感,提前留意下版本。
如果你还有老系统要兼容 .xls
格式,可以看看 NPOI,API 风格跟 EPPlus 差不多,也挺好用。
嗯,导 Excel 的需求不稀奇,但能写得清爽又通用的类,不多。这个封装方式还蛮适合团队里复用的。如果你也经常要批量导出数据,拿去改一改就能用了。
10KB
文件大小:
评论区