利用NPOI导出到Excel2007
项目中导出到excel2003中遇到瓶颈,因为列表数据已经超过了65535行,excel2003一个工作表中最大只支持65535行,解决的办法有两个:
1,当数据超过65535行时,新建另一个工作表,把数据写入另外的工作表中,
2,下载最新版本的PNOI组件,最新版本的组件支持office2007,目前最新版本为NPOI 2.0 beta 1,
下面来介绍一下导出NPOI 1.2.4 版本 导出到excel2003和NPOI 2.0 beta 1导出excel2007的具体方法及注意事项。
引用命名空间:
using NPOI.XSSF.UserModel; using NPOI.SS.UserModel; using NPOI.HSSF.UserModel; using System.IO;
早期版本引入的命名空间:
using NPOI.HSSF.UserModel; using NPOI.SS.UserModel; using System.IO; using NPOI.HSSF.Util;
亲,看到哪里不同了吗?
支持excel2003与支持excel2007大体类似,不同之处可以查看官方demo,
导出到excel中的写法: HSSFWorkbook wk = new HSSFWorkbook();
导出到excel2007中的写法: IWorkbook workbook = new XSSFWorkbook();
详细见代码,注意的是运行环境,在开发机器上写demo测试通过,发布到windows server2003上就报出异常,就这么折腾了一天,最后一步一步比较,才发现
服务器端.net framework没有安装sp1,特别提醒如果是.net framewok2.0环境,一定要打上 sp1补丁。
最后还有个问题没有解决:用NPOI新版本 在开发机器上导入导出excel2003都成功,但发布到服务器上,就不能导入excel2003上,报出错误。哪位博友知道是什么问题,指点一下。
作者:逐帆
出处:http://www.cnblogs.com/langhua/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。