使用NPOI导出List数据为Excel文件
来源:互联网 发布:淘宝 快开阀芯 编辑:程序博客网 时间:2024/06/08 17:04
NPOI下载地址:http://npoi.codeplex.com/
导出Excel文件源码:
public static void RenderToExcel<T>(List<T> datas) { MemoryStream ms = new MemoryStream(); IWorkbook workbook = new HSSFWorkbook(); ISheet sheet = workbook.CreateSheet("导出数据"); IRow headerRow = sheet.CreateRow(0); int rowIndex = 1, piIndex = 0; Type type = typeof(T); PropertyInfo[] pis = type.GetProperties(); int pisLen = pis.Length - 2;//减2是多了2个外键引用 PropertyInfo pi = null; string displayName = string.Empty; while (piIndex < pisLen) { pi = pis[piIndex]; displayName = ExcelService.GetDisplayName(type, pi.Name); if (!displayName.Equals(string.Empty)) {//如果该属性指定了DisplayName,则输出 try { headerRow.CreateCell(piIndex).SetCellValue(displayName); } catch (Exception) { headerRow.CreateCell(piIndex).SetCellValue(""); } } piIndex++; } foreach (T data in datas) { piIndex = 0; IRow dataRow = sheet.CreateRow(rowIndex); while (piIndex < pisLen) { pi = pis[piIndex]; try { dataRow.CreateCell(piIndex).SetCellValue(pi.GetValue(data, null).ToString()); } catch (Exception) { dataRow.CreateCell(piIndex).SetCellValue(""); } piIndex++; } rowIndex++; } workbook.Write(ms); FileStream dumpFile = new FileStream(@"C:\\1.xls", FileMode.Create, FileAccess.ReadWrite); ms.WriteTo(dumpFile); ms.Flush(); ms.Position = 0; dumpFile.Close(); }
注:
1、引用压缩包中的NPOI.dll文件到对应项目中。
2、在文件夹中创建一个空excel文件,该文件需要添加对应.net用户的权限,也可直接添加Everyone的读写权限。
0 0
- 使用NPOI导出List数据为Excel文件
- 使用NPOI导出Excel文件
- 使用NPOI导出Excel文件
- 使用NPOI导出数据到Excel
- 使用NPOI操作Excel导入导出数据
- 使用npoi.dll导出数据到excel
- 【NPOI】导出Excel文件
- 使用NPOI导出EXCEL
- 使用NPOI导出excel
- .NET使用NPOI将数据导出/导入到Excel文件介绍
- NPOI导出数据到Excel
- npoi实现数据导出Excel
- 使用PHP导入Excel和导出数据为Excel文件
- 使用PHP导入Excel和导出数据为Excel文件
- C# 使用NPOI 导出Excel
- 使用NPOI导出Excel文档
- 使用NPOI导出Excel模板
- 【推荐】.NET使用NPOI组件将数据导出Excel
- Nginx、LVS及HAProxy负载均衡软件的优缺点详解
- 第十一章:表单标签——深入浅出学Spring Web MVC
- POJ 1026 Cipher
- myeclipse配置adt
- svn 用法
- 使用NPOI导出List数据为Excel文件
- 黑马程序员-02.C 语言中 if while switch 知识点总结
- Java常用类库(NumberFormat)
- 获取URL中指定参数的值
- [Python]正则表达式(...)分组的扩展示例
- Hibernate中两种获取Session的方式
- Java中的clone()方法
- 程序员的十大经验和十大教训
- jQuery_review之对已经加载到页面上的的table进行内容的筛选